[英]Pass php variable/array data to angular js
我正在使用帶有“$ row”的php數據庫連接作為一個數組,將名稱存儲在其中。但經過大量搜索,我得到了如何在角度js中傳遞php變量這里是代碼,我正在嘗試實現。我是新手,我的幫助將不勝感激。
<?php
$con = mysqli_connect('localhost','root','','practice');
if (!$con) {
die("couldnt connect". mysqli_error);
}
$q= "select * from test";
$result= $con->query($q);
if ($result->num_rows>0) {
while ($row = $result->fetch_assoc()) {
echo $row['name']."<br>";
}
}
print_r($result);
echo json_encode($result);
?>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.4/angular.js">
</head>
<body>
<ul ng-init="names = <?php echo htmlspecialchars(json_encode($row)); ?>">
<li ng-repeat="x in names">
<p>{{x.name}}</p>
</li>
</ul>
</body>
</html>
您的PHP代碼需要一些改進使用它而不是:
$arr = array();
if ($result->num_rows>0) {
while ($row = $result->fetch_assoc()) {
$arr[] = $row['name'] ;
}
}
然后回復它
<ul ng-init="names = <?php echo htmlspecialchars(json_encode($arr)); ?>">
如前所述,您需要格式化名稱中的數據;
所以,目前分配給你的“名字”的價值是你在評論中提到的“eden frank matt”。 這需要改為:
[
{name: 'eden'},
{frank: 'eden'},
{matt: 'eden'}
]
所以當你檢查html源代碼時,我們應該有一個讓人們說“人”的集合,然后遍歷它的所有元素並指向它們的字段“name”:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.4/angular.js">
</script>
</head>
<body ng-app>
<ul ng-init="people = [{name:'eden'}, {name:'frank'}, {name:'matt'}]">
<li ng-repeat="person in people">
<p>{{person.name}}</p>
</li>
</ul>
</body>
</html>
我有類似的要求,下面對我有用。
data-ng-click="editField(product, '<?php echo $_SESSION["login_user"] ?>')"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.