PHP查询MYSQL数据表,返回的ARRAY是一条数据的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP查询MYSQL数据表,返回的ARRAY是一条数据的相关的知识,希望对你有一定的参考价值。

返回的$list是一条数据的数组,而不是多条数据的二维数组,为什么?谁帮帮。谢谢,数据库里有多条数据

$link=mysql_connect("localhost","root","root");
mysql_query("set names gbk");
$msql="select * from pic";
$res=mysql_db_query("text",$msql,$link);
echo $res;
$list=mysql_fetch_array($res);
print_r($list);

mysql_close($link);

我来回答:

$list=mysql_fetch_array($res);这句话执行的是$msql="select * from pic";这条数据库语句。而却只能执行一条,这一条语句也有其执行规律,就是数据库列表中的第一行。

可是却有一个例外,也是一个规矩,$list=mysql_fetch_array($res);这条语句执行第一次取出第一行,接着执行第二次取出第二行。依此类推。

这就,就产生了一种比较简单却又可行的取出方案:

使用while循环(例程如下):

$link=mysql_connect("localhost","root","root");
mysql_query("set names gbk");
$msql="select * from pic";
$res=mysql_db_query("text",$msql,$link);

//你的程序在这里开始改变:

$i=0;
$list_arr=array();
while($list=mysql_fetch_array($res))//这一句,就是判断是否还有数据没有取完,如果取完,会由数据库返回false,停止while循环,如果有,则继续;
$list_arr[$i]=$list;
$i++;

print_r($list_arr);//到了这里,当while循环结束,你要取出的所有数据的二维数组也就形成了。具体有多长,有多少个数组元素,就看你的数据库中有多少行数据了。

mysql_close($link);
参考技术A $link=mysql_connect("localhost","root","root");
mysql_query("set names gbk");
$msql="select * from pic";
$res=mysql_db_query("text",$msql,$link);
echo $res;
while ( $list=mysql_fetch_array($res))
print_r($list);
//因为 mysql_fetch_array 是把结果集中的当前行返回,行指针下移到下一行。只返回一行。你当然得到的是 一条数据的数组本回答被提问者采纳
参考技术B 请用while循环逐条取出即可。
你只自行一次fetch array就只取出一条。
参考技术C $list=mysql_fetch_array($res);
是需要便利才能有全部结果的

如何在PHP中获取MYSQL数据库返回的数据的行数?

如何在PHP中获取MYSQL数据库返回的数据的行数?$result=mysql_db_query($mysql_database, $strsql, $conn);数据集是result,怎么得到它的记录数?

1、首先打开MYSQL的管理工具,新建一个test表,并且在表中插入两个字段。

2、接下来在Editplus编辑器中创建一个PHP文件,然后进行数据库连接,并且选择要操作的数据库。

3、然后通过mysql_query方法执行一个Insert的插入语句。

4、执行完毕以后,我们回到数据库管理工具中,这个时候你会发现插入的中文乱码了。

5、接下来我们在PHP文件中通过mysql_query执行一个set  names  utf8语句即可完成操作。

参考技术A <?php echo mysql_num_rows($result);?>
根据你的数据集,假设符合条件的有5条,那么上面的代码会输出5
参考技术B mysql_num_rows()或者select count(*) from table;本回答被提问者采纳 参考技术C

1. mysql_num_rows 可得到查询记录数

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
  
  die('Could not connect: ' . mysql_error());
  
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * FROM person";
$result = mysql_query($sql,$con);
echo mysql_num_rows($result);
mysql_close($con);
?>

2. mysql_affected_rows可得到更新影响的记录数

<?php
$con = mysql_connect("localhost","mysql_user","mysql_pwd");
if (!$con)
  
  die("Could not connect: " . mysql_error());
  
mysql_select_db("mydb");
mysql_query("DELETE FROM mytable WHERE id < 5");
$rc = mysql_affected_rows();
echo "Records deleted: " . $rc;
mysql_close($con);
?>

以上是关于PHP查询MYSQL数据表,返回的ARRAY是一条数据的的主要内容,如果未能解决你的问题,请参考以下文章

php删除一条mysql记录 怎么判断是不是删除成功,

如何在PHP中获取MYSQL数据库返回的数据的行数?

php 数据库查询order by 与查询返回的数据类型

PHP如何将SQL查询结果转为多维数组,并按查询行输出

PHP PDO mySQL 查询返回列名和整数

PHP操作MySQL的常用函数