这里我试图通过json对象获取数据库值,但它只显示我的数据库的第一行如何显示整个数据库。需要做哪些更改。
<html>
<head>
<script language="javascript" type="text/javascript" src="jquery.js"> </script>
</head>
<body>
<h3>Output: </h3>
<div id="output">this element will be accessed by jquery and this text replaced</div>
<script id="source" language="javascript" type="text/javascript">
$(function ()
{
$.ajax({
url: 'example.php',
data: "", //you can insert url argumnets here to pass to api.php
//for example "id=5&parent=6"
dataType: 'json', //data format
success: function(data) //on recieve of reply
{
var uid = data[0]; //get id
var firstname = data[1]; //get name
var lastname = data[2];
var email = data[3];
var username = data[4];
var password = data[5];
$('#output').html("<b>uid: </b>"+uid+"<b> firstname: </b>"+firstname+"<b> lastname: </b>"+lastname+"<b> email: </b>"+email+"<b> username: </b>"+username+"<b> password: </b>"+password);
// $('#output').html("<b>uid: </b>"+uid+"<b> firstname: </b>"+firstname+"<b> lastname: </b>"+lastname+"<b> email: </b>"+email+"<b> username: </b>"+username+"<b> password: </b>"+password); //Set output element html
}
});
});
</script>
</body>
</html>
example.php文件
<?php
// server info
$server = 'localhost';
$user = 'root';
$pass = '';
$db = 'ocean';
$connection = mysql_connect($server, $user, $pass) or die(mysql_error());
$database = mysql_select_db($db) or die(mysql_error());
$result = mysql_query("select * from oops"); //query
$array = mysql_fetch_row($result); //fetch result
echo json_encode($array);
?>
这里是我的代码,它给我第一行作为我的数据库的结果 。但是我希望在这段代码中显示完整的数据库结果。
答案 0 :(得分:1)
您应该获取所有行并将其收集到数组
中$array = array();
while ($row = mysql_fetch_row($result)) {
$array[] = $row;
}
echo json_encode($array);
答案 1 :(得分:0)
您正在使用mysql_*
。不要这样做,因为它已被弃用,因为PHP 5.5.0使用mysqli_*
代替。问题是你只是获取第一行而不是其他行。
使用循环。这样的事情就足够了:
while ($row = mysqli_fetch_row($result)) {
$array[] = $row;
}