2017-01-17 47 views
0

我是angularJS的新手,对JavaScript有很少的知识。来自阵列的角度显示数据

我想通过使用$ http.post方法从数据库检索数据。下面是我从.php文件得到的。

[{ 
    "ticketid": "1484637895", 
    "categoryid": "1", 
    "subcategoryid": "2", 
    "ciphonenum": "01814149028", 
    "calldescription": "The customer wanted to know all the SKU of Bashundhara Baby Diaper and he requested to inform him through the mail.", 
    "ccrreply": "CCR sent him all SKU of Diaper including the M.R.P.", 
    "ccraction": "N\/A", 
    "output": "N\/A", 
    "remarks": "N\/A", 
    "contactinfoname": "MD.Masud", 
    "ciaddress": "Banani,DOHS\nDhaka." 
}] 

这里是我的PHP文件是什么样子

<?php 
$data = json_decode(file_get_contents("php://input")); 

require 'db-config.php'; 

$ticketid = $data->id; 

$sql = "SELECT t.ticketid, t.categoryid, t.subcategoryid, td.ciphonenum,  td.calldescription, td.ccrreply, 
td.ccraction, td.output, td.remarks, ci.contactinfoname, ci.ciaddress FROM  ticketdetails td 
INNER JOIN tickets t on t.ticketid = td.ticketid 
INNER JOIN contactinfodetails ci ON ci.ciphonenum = td.ciphonenum WHERE  t.ticketid = '$ticketid'"; 

$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
    $data = array(); 
    while($row = $result->fetch_assoc()) { 
     $data[] = $row; 
    } 
} else { 
    echo "0 results"; 
} 
echo json_encode($data); 
$conn->close(); 
?> 

下面是angularjs其中产生POST请求的功能

$scope.showTicket = function() { 
     var id = $routeParams.id; 
     $http.post('api/showTicket.php',{'id':id}).then(function(response){ 
      $scope.ticket = response.data; 
      console.log($scope.ticket); 
     }); 
    }; 

我想只显示ticketid和calldescription从数组,但每当我分配值如 $ scope.ticketid = $ scope.ticket.ticketid;它说undefined变量。请帮忙....

+0

$ scope.ticket [0] .ticketid –

+0

,因为你的$ scope.ticket是一个数组。所以** $ scope.ticketid = $ scope.ticket [0] .ticketid; **可以工作.. –

+0

我试过$ scope.ticketid = $ scope.ticket [0] .ticketid;但它说未定义的变量。 – viparvez

回答

0

您的JSON是对象数组,而不是对象。的

所以与其做$scope.ticketid = $scope.ticket.ticketid,尝试:

$scope.ticketid = $scope.ticket[0].ticketid; 

由于您的阵列只包含一个对象,它可能是解...

+0

我试过$ scope.ticketid = $ scope.ticket [0] .ticketid;但它说未定义的变量。 – viparvez

+0

它的工作!非常感谢 – viparvez

+0

@ facebook-391055214411309如果能解决你的问题,你能接受吗? – Mistalis