$sql=mysql_query("select * from t where gameid=$id order by id desc");
$info=mysql_fetch_array($sql);do{
echo "$info->id";
echo "$info->name;}
while($info=mysql_fetch_object($sql));不管查什么都是少一条记录,不知道怎么回事,大家帮忙看下代码
$info=mysql_fetch_array($sql);do{
echo "$info->id";
echo "$info->name;}
while($info=mysql_fetch_object($sql));不管查什么都是少一条记录,不知道怎么回事,大家帮忙看下代码
//这句得去掉,不然你加上,然后再用循环,就是从第二条开始了
//因为你取了一遍数据,指针向下移了一位,再循环就是从第二条开始了呗
$info=mysql_fetch_array($sql);do{
echo "$info->id";
echo "$info->name;
}
while($info=mysql_fetch_object($sql));
输出对象时不要加引号
另外你这样写效率很低,do while循环效率比较低,它是不管条件成不成立都会先循环一次然后再去检查条件,建议用while后者foreach来做,foreach的效率最高!这是你的代码
$sql=mysql_query("select * from t where gameid=$id order by id desc");
do{
echo $info->id;
echo $info->name;
}
while($info=mysql_fetch_object($sql));
这是while做的:
$sql=mysql_query("select * from t where gameid=$id order by id desc");
while($info = mysql_fetch_array($sql))
{
echo $info['id'].'<br>';
echo $info['name'].'<br>';
}