【发布时间】:2012-01-14 10:47:22
【问题描述】:
我得到了这个代码。它在我的本地主机上工作得很好,但是当我把它放到网上时,它只会将数据保存到数据库中,但它似乎没有加载它。
当我通过 ajax 将字符串从 api.php 传递到站点时,它可以工作。所以也许它与json有关。另一方面,我正在我的服务器上尝试来自 http://api.jquery.com/jQuery.getJSON/ 的 get_json 示例,它也确实有效。
我尝试了许多不同的东西,例如 jsonp、json-fallback 等,但似乎没有任何效果。
这是代码:
api.php:
<?php
include('db.php');
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
$tableName = $_GET['page'];
$category = $_GET['category'];
$date = $_GET['date'];
if ($date == Null){
if ($category <> Null){
$result = mysql_query("SELECT * FROM $tableName WHERE category LIKE '$category'");
}else {
$result = mysql_query("SELECT * FROM $tableName");
}
}else{
$result = mysql_query("SELECT * FROM $tableName WHERE date LIKE '$date'");
}
$data = array();
while ( $row = mysql_fetch_row($result))
{
echo json_encode($data);
?>
在后台某处:
$.ajax({
url: 'api.php?page=home', data: "", dataType: 'json', success: function(rows) {
for (var i in rows){
var row = rows[i];
var vdate = row[0];
var vtitle = row[1];
var vcontent = row[2];
$('#edate').val(vdate);
$('#etitle').val(vtitle);
$('#econtent').val(vcontent);
}
}
});
任何帮助表示赞赏!
【问题讨论】:
-
您的网络服务器日志中有任何错误吗?还是php错误?还是mysql错误?还是浏览器出错?