php关于mysql的select语句的一个问题

php连接数据库后,用select*查询表中所有数据,但只返回第一条,数据库连接没问题。为什么会这样... php连接数据库后,用select * 查询表中所有数据,但只返回第一条,数据库连接没问题。
为什么会这样
展开
 我来答
百里拐弯儿
2011-08-15 · TA获得超过221个赞
知道小有建树答主
回答量:220
采纳率:100%
帮助的人:130万
展开全部
看看你select语句是怎么写的?还有是你怎么执行这条SQL语句的,是不是直接$row=mysql_fetch_arry(mysql_query($sql));循环多个,得用while($row=mysql_fetch_array()){}
追问
$sql=select * from table;
表里有3条内容,
$row=fetch_array($sql);
print_r($row);
但是只打印出了一条内容,也就是id=1的内容。相当于语句成了 select * from table where id=1

我也试过将语句改成 select * from table where id=2,可以打印出id=2的内容
但是无法讲所有内容打印出来
追答
sql语句中的table应该加`号,否则我感觉会出错,因table是sql语句中的保留字。另外PHP中没有fetch_array这个函数吧。这样写:$sql="select * from `table`";$query = mysql_query($sql);
while($row = mysql_fetch_array($query)){print_r($row);},这样有几条就输出几条。再看看手册吧,mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组。是一行,所以你的只有一条数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
arill
2011-08-15 · TA获得超过3143个赞
知道小有建树答主
回答量:1328
采纳率:0%
帮助的人:913万
展开全部
排查问题方法:直接在mysqladmin等工具执行那句select 语句,看是不是此语句问题。
你的php读取查询结果的数组写法是否正确了?
追问
$sql=select * from table;
表里有3条内容,
$row=fetch_array($sql);
print_r($row);
但是只打印出了一条内容,也就是id=1的内容。相当于语句成了 select * from table where id=1

我也试过将语句改成 select * from table where id=2,可以打印出id=2的内容
但是无法讲所有内容打印出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuyunbozust
2011-08-15
知道答主
回答量:26
采纳率:0%
帮助的人:14.9万
展开全部
你是怎么知道只返回了第一条啊?select语句写出来看下,还有你是怎么显示你得到的结果?
追问
$sql=select * from table;
表里有3条内容,
$row=fetch_array($sql);
print_r($row);
但是只打印出了一条内容,也就是id=1的内容。相当于语句成了 select * from table where id=1

我也试过将语句改成 select * from table where id=2,可以打印出id=2的内容
但是无法讲所有内容打印出来
追答
$row=fetch_array($sql);
print_r($row);
输出是要循环的,不然只有一条记录
$sql="select * from table";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result))
{
print_r($row);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式