我需要从mysql数据库回显第4行第3列
$query = 'SELECT * FROM picture LIMIT 10';
$result = mysql_query($query);
$row = mysql_fetch_array($result,MYSQL_NUM );echo $row[4][3]不工作!!?是php吗?
$query = 'SELECT * FROM picture LIMIT 5';
$result = mysql_query($query);
$rec = mysql_fetch_array($result,MYSQL_NUM );
print_r (json_encode($result[0]));在html方面
$.ajax({
url: "viewnew.php",
data: {
current_image: imId,
direction : dir
},
success: function(ret){
console.log(ret);
var arr = eval(ret);
alert("first: " + arr[0] + ", second: " + arr[1]);发布于 2012-06-08 06:03:35
你的答案是echo mysql_result($result, 3, 3)。您也可以使用echo mysql_result($result, 3, 'rowname')。注意,由于它是零索引的,所以第四行是#3,因为第一行是#0。
$result包含一个MySQL查询结果对象,您需要使用内置函数来访问它。
实际上,$row只包含第一行的数组。内部指针会增加,所以如果您两次运行$row代码行,$row现在将有第二行。一旦行用完,这一行代码将计算为false (下面的代码很有用)。
php.net提供了以下代码:
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
printf("ID: %s Name: %s", $row[0], $row[1]);
}由于while语句在行用完时将计算为false,因此您将得到所有行。由于您正在进行查询,所以您应该知道如何处理每一行中的相关数据。
关于AJAX,在服务器端,您需要将行分配给数组变量(如上面所示),然后输出所需的行。既然您知道如何输出它们,那么就取决于您如何在客户端处理它们。
htmlspecialchars()或htmlentities()将使数据输出安全。
抽样方法如下:
$query = mysql_query(...);
$rows = array();
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$rows[] = $row; //append row to rows array
}
//Then output the relevant rowsphp.net有关于如何在PHP中使用MySQL函数的大量文档。
另外,不要忘记安全性!在使用用户输入进行查询时,mysql_real_escape_string()几乎总是必要的。
https://stackoverflow.com/questions/10943762
复制相似问题