【发布时间】:2014-07-14 18:42:32
【问题描述】:
当 Url 重写时,我有一个用于测试 Ajax 请求的简单项目,如下所示:
htaccess:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$ index.php?param=$1
index.php:
<?php
if (!isset($_GET['param'])){
include('home.php');
}
if (isset($_GET['param'])){
include('tick.php');
}
?>
home.php:
<h1>HOME</h1>
tick.php:
$(document).ready(function ($) {
$.ajax({
type: "POST",
url: "php/request.php",
dataType: "json",
data: {k_name:'book'},
success: function (data) {
//ghtml();
}
})
}
request.php:
<?php
require("config.inc.php");
require("Database.singleton.php");
$k_name=$_POST['k_name'];
$data = array();
//Connect To DB
$db= new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
$db->connect();
$sql = "SELECT id, name FROM table1 WHERE name=$k_name ";
$rows = $db->fetch_array($sql);
foreach($rows as $record){
$data[] = array('id' => $record['id'], 'name' => $record['name']);
}
echo json_encode(array_values($data));
?>
当 URL 是:
http://localhost/ajax/aaaa
注意:我的文件夹项目名称是 Ajax。
Ajax 请求运行良好,但在 Url 中使用斜杠时:
http://localhost/ajax/aaaa/
Ajax 请求崩溃,我现在必须使用框架来更好地调度请求,但我不明白为什么会出现这个问题。
【问题讨论】:
-
“崩溃”是什么意思?你遇到了什么错误?
-
我的意思是当 url 是:localhost/ajax/aaaaajax 请求返回 json 数据,但像这样在 url 中添加斜杠:localhost/ajax/aaaa/aaa 不返回任何数据
-
我的项目在 zip 文件中:uplodha.ir/dl/93-04/files/ajax-test.zip