【发布时间】:2014-11-21 18:29:09
【问题描述】:
这是我的 php 代码
<?php
try {
$dbcon=new PDO('mysql:host=localhost;dbname=angular;charset=utf8',"root","");
$dbcon->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbcon->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
$query="SELECT * FROM products ";
$sql=$dbcon->prepare($query);
$sql->execute();
$result=$sql->fetchAll(PDO::FETCH_OBJ);
$json_result=json_encode($result);
echo $json_result;
}catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
?>
这是我的控制器到角度
function ProductListCtrl($http)
{
$http.get('api/products.php').success(function (data) { alert(data); this.product = data; });
}
警报消息是 [object Object,...],我如何从 php 中检索 json 数据?
【问题讨论】:
-
这是 json 对象,如果您想将其作为字符串提示,您可能需要
JSON.stringify(data)。否则,在您的代码中,您应该能够只访问属性(即 data.foo.bar) -
问题是我认为
$http.get不检索 json 数据,出于某种原因,来自 php 脚本。 -
这就是为什么我有一个解决方案来检查它,如果它没有成功,它将是 null、一个空数组或你的警报中的空对象。另一种简单的检查方法是运行
curl http://host:port/path