Php Angularjs中的JSONP

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

我想把数据库中的数据输入我的Angluar.js

因此,我创建了一个php文件,用于选择我的数据。
我读到我必须使用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);