我有一个问题,从mysql中检索数据显示在字幕中,当我转到我的网页时,它只显示数据库中的一个数据,在marquee.my中的问题是如何检索所有存储的data.thank你下面是代码部分:
$select="SELECT newsid, headlines from news WHERE uploaddate order by uploaddate desc limit 4";
$rsd=mysql_query($select);
while($row = mysql_fetch_array($rsd))
{
$newsid=$row['newsid'];
$tittle=$row['headlines'];
$uploaddate=$rowdata['uploaddate'];
}发布于 2012-06-13 20:28:35
“只有一个数据”是什么意思?
也许问题就在这里
while($row = mysql_fetch_array($rsd))
{
$newsid=$row['newsid'];
$tittle=$row['headlines'];
$uploaddate=$rowdata['uploaddate'];
}这样,您将一次又一次地重写变量,因此在循环结束时,您将只获得最后一个记录值。
一种可能的解决方案是创建一个(数组的)数组,并将数据存储到其中。
所以
$result = array()
while($row = mysql_fetch_array($rsd))
{
$result[] = array('news_id' => $row['newsid'],
'title' => $row['headlines'],
'upload_date' => $rowdata['uploaddate']);
}发布于 2012-06-13 20:30:55
最有可能的问题是,您一遍又一遍地写入相同的变量
while($row = mysql_fetch_array($rsd))
{
$newsid=$row['newsid'];
$tittle=$row['headlines'];
$uploaddate=$rowdata['uploaddate'];
}您最终将得到newsid、title和upload date的最后一个值,因此我建议您在循环中回显数据。示例:
while($row = mysql_fetch_array($rsd))
{
$newsid=$row['newsid'];
$tittle=$row['headlines'];
$uploaddate=$rowdata['uploaddate'];
printf('<a href="/news.php?story=%d">%s</a> - on %s',$newsid,$title,$uploaddate);
}或者将数据存储到数组中。
$stories = array();
while($row = mysql_fetch_array($rsd))
{
$stories[] = $row;
}发布于 2012-06-13 20:36:42
你试试这个吧..。
while($row = mysql_fetch_array($rsd))
{
$newsid=$row['newsid'];
$tittle=$row['headlines'];
$uploaddate=$rowdata['uploaddate'];
$cont.="<a href='newpage.php?$newsid'>$title - $uploaddate</a>";
}
echo "<marquee>$cont</marquee>";https://stackoverflow.com/questions/11014769
复制相似问题