伙计们我有一个问题,实际上我的PHP代码是正确的,但我不知道为什么它显示未定义到我的客户端脚本。有人可以帮助我
这是我的api.php这是我把我的php
<?php
$dbcon = mysqli_connect("localhost", "root", "", "orms") or die("Server not available" . mysql_error());
$data = array();
$result = mysqli_query($dbcon,"SELECT * FROM cottages") or die(mysqli_error()); //query
//$array = mysqli_fetch_row($result);
$data = array();
while($row = mysqli_fetch_assoc($result))
{
$data[] = $row;
}
echo json_encode( $data ) //fetch result
?>
这是我的client.php代码
<?php
$dbcon = mysqli_connect("localhost", "root", "", "orms") or die("Server not available" . mysql_error());
?>
<html>
<head>
<script language="javascript" type="text/javascript" src="jquery.js"> </script>
</head>
<body>
<h2> Client example </h2>
<h3>Output: </h3>
<div id="output"></div>
<script id="source" language="javascript" type="text/javascript">
$(function ()
{
$.ajax({
url: 'api.php', data: "POST", dataType: 'json', success: function(rows)
{
for (var i in rows)
{
var row = rows[i];
var cot_id = row[0];
var image = row[1];
$('#output').append("<b>cottage: </b>"+cot_id+"<b> image: </b>"+image)
.append("<hr />");
}
}
});
});
</script>
</body>
</html>
感谢您的帮助..
答案 0 :(得分:1)
您正在使用mysqli_fetch_assoc
,因此该行将是一个关联数组,该数组将变为Javascript对象。但是在Javascript代码中,您正在访问row
,就好像它是一个数组,而不是一个对象。您需要使用列名:
var cot_id = row.cot_id;
var image = row.image;
(我只是猜测列名,因为您使用了SELECT *
所以我无法在表格中看到实际的名称。)