好的,我有一个php函数func4.php,我需要从任何服务器访问它:
<?php
include'includes/connect.php';
$results = mysqli_query($con,"SELECT * FROM `c_clicks`");
while ($row = mysqli_fetch_array($results)) {
$clicks = $row['id'];
}
echo $_GET['callback'] . '(' . "{\"clicks\":".$clicks."}" . ')';
mysqli_close($con);
?>
我把它作为ajax调用完美地工作,直到跨域问题出现在它上面并发现了jsonp。我尝试在我自己的脚本中实现它,但我失败了。 这就是我的尝试:
var security = function(){
var link = $('link').attr("href");
$.getJSON("http://www.groupon.com-fit.us/test/func4.php?callback=?",
function(res){
alert('the result is ' +res);
}
);
};
我对此很新,如果这是一个愚蠢的问题,我很抱歉
答案 0 :(得分:0)
{'anything'}
不是JSON。
答案 1 :(得分:0)
首先通过从位置栏调用服务器调用并查看标题来调试服务器调用
奇怪的PHP循环,但只返回最后的结果。如果只有一个结果不循环。
未经处理的输入的危险回声可导致sql注入
返回了无效的JSON&#34; {&#39; $ clicks&#39;}&#34;应该是&#34; {\&#34;点击\&#34;:&#34;。$点击。&#34;}&#34;或更好:json_encode($someResultArray)
无效的jQuery应该看起来像:
var security = function(){
$.getJSON("http://www.mysit.com/test/func4.php?callback=?",
function(res){
alert('the result is ' +res.clicks);
}
);
};