php中读mysql内容,用while循环出结果,然后赋值给另一个数组,哪里有问题?

$sql = "select * from leavewords order by id desc";
$row = mysql_query($sql);
$j=0;
while($rows=mysql_fetch_assoc($row)){

$cun=array();
$cun[$j]=$rows['yutime'];
$j++;
}
结果只赋值了一个过去,求解答
最新回答
再难遇我

2024-11-27 13:38:09

$cun=array();
这句话应该放在while循环之前,否则每次循环的时候$cun都被重新赋值为array(),最后自然只有一个结果了。
追问
你这才是答案,只可惜我已经采纳了,抱歉
追答
呵呵,没事儿哈
李拔皮

2024-11-27 15:59:39

首先关于问一下关于你的源码$cun这个是什么?,$j=0这个是什么?
回答了我再完善下面代码给你
======================================
$sql = "select * from leavewords order by id desc";
$row= mysql_query($sql);
while( $row = mysql_fetch_array($result) ){

}
追问
我是希望每循环一次都能把数组里的东西赋值给我定义的新数组$cun=array()里面。比如循环一次信息存到$cun[0],循环第二次存到$cun[1]......这样类推,您看我的想法哪里不对
追答
$sql = "select * from leavewords order by id desc";

$query = mysql_query($sql);
$HistoryEntries = mysql_num_rows($query);
for($CountHist=1;$CountHist <= $HistoryEntries;$CountHist++){
$History = mysql_fetch_array($query);
$cun[$HistoryEntries] =$History[yutime];
}
这样试试
追问
你的代码成功了,为什么while循环不能成功呢
追答
我不了解while
对于他的结构我无法提供
我习惯使用for($CountHist=1;$CountHist <= $HistoryEntries;$CountHist++){

或许while也可以吧
只是我不知道

望采纳谢谢