Php Angularjs中的JSONP
我想把数据库中的数据输入我的Angluar.js 因此,我创建了一个php文件,用于选择我的数据。Php Angularjs中的JSONP,php,angularjs,jsonp,Php,Angularjs,Jsonp,我想把数据库中的数据输入我的Angluar.js 因此,我创建了一个php文件,用于选择我的数据。 我读到我必须使用jsonp,否则我将无法获得数据 data.php <?php $db = mysqli_connect("xxx", "xxx", "xxx", "xxx"); $select = "select * from product;"; $result = mysqli_query($db,$select); if ($res
我读到我必须使用jsonp,否则我将无法获得数据 data.php
<?php
$db = mysqli_connect("xxx", "xxx", "xxx", "xxx");
$select = "select * from product;";
$result = mysqli_query($db,$select);
if ($result) {
$i=0;
$outp = "";
while ($row = mysqli_fetch_assoc($result))
{
if ($outp != "") {$outp .= ",";}
$outp .= '"preis":"' . $row["preis"] . '",';
$outp .= '"name":"'. $row["name"] . '"}';
}
$outp ='{"records":['.$outp.']}';
echo($outp);
}
?>
现在我得到一个语法错误:
“SyntaxError:意外标记:':'”
感谢您的帮助不要自己构建JSON。试试这个。最重要的是,只需按照您喜欢的方式创建一个数组,然后使用
json\u encode()
“我读到我必须使用jsonp,否则我将无法获得数据。”-不。如果你想跨源代码执行Ajax,你需要做一些事情来处理相同的源代码策略。JSONP是一个肮脏的黑客,它实现了这一点。我们现在有CORS。使用CORS。不要通过手动将字符串混合在一起来生成JSON。PHP已经有很多年了。现在我使用json_编码,看起来语法错误已经消失了。但是当我运行js时,我得到一个404错误。。。甚至php也会报告正确的数据。例如,我可以把我的url放进去。它说这是一个有效的json。你在这里链接的问题作为副本对我没有帮助。还有其他的建议吗?404只是意味着你的URL有问题。但是我可以找到URL。这就是为什么我想知道,为什么它说404…这一刻对我有帮助。看起来json对象现在是正确的。但我总是得到一个404错误。看来我找不到数据了。但是我可以在我的浏览器中打开url,我可以看到数据。
var url = "http://server/data/data.php?callback=JSON_CALLBACK"
$http.jsonp(url)
.success(function(data){
console.log(data.found);
});
$result = [];
while ($row = mysqli_fetch_assoc($result))
{
$result[] = $row;
}
echo json_encode($result);