0

我正在尝试从读取 mySQL 数据库的 PHP 文件中检索数据。数据在浏览器上很好:

http://www.primaryaccess.org/REST/geteasyfile.php?id=25

但是当我尝试使用 jQuery 的 get() 或 post() 方法访问它时,我没有得到任何响应。Firebug 中的响应标头说有正确数量的数据,但没有显示:

$.get("http://www.primaryaccess.org/REST/geteasyfile.php?id=25",function(data) { alert(data); });

这是PHP:

<?
$id=$_GET['id'];
$query="SELECT * FROM easyfile WHERE id = '$id'";
$result=mysql_query($query);
mysql_close();
if (($result == false) || (!mysql_numrows($result)))
    echo "Can't load file!";
else    
    echo mysql_result($result,0,"data");
?>

谢谢!

账单

4

3 回答 3

0

可能你的问题出在 url,你已经设置了 id=25 然后你连接了 id 变量

希望这有帮助

于 2012-05-21T22:40:42.167 回答
0

尝试getJSON并替换alert()console.log(). 此外,您的 URL 看起来很奇怪 ( 'id=25' + id)。我希望你也注意到 JS 中有一个同源策略,所以你需要将你的测试文件上传到指定的域。

于 2012-05-21T22:44:59.037 回答
0

尝试使用 json 回调

JS

$.ajax({
  url: "http://www.primaryaccess.org/REST/geteasyfile.php?id=25&jsoncallback=?",
  success: function(data) {
    alert(data)
  },
  error: function(error){
    alert(JSON.stringify(error));
  }
});

PHP

<?
$id=$_GET['id'];
$query="SELECT * FROM easyfile WHERE id = '$id'";
$result=mysql_query($query);
mysql_close();
if (($result == false) || (!mysql_numrows($result)))
    $result = "Can't load file!";
else    
    $result = mysql_result($result,0,"data");

$result = array('result' => $result);

echo $_GET['jsoncallback'] . '(' . json_encode($result) . ');'

?>
于 2012-05-21T23:16:03.180 回答