我有一个可以返回多行的查询。
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)){
$data[] = $row;
foreach ($data as $row){
echo $row['...'];
}
}问题是它只打印一行,而我应该打印两行。
有谁能帮帮我吗?
发布于 2011-12-23 17:31:06
问题可能是您重用了$row变量。此外,逻辑也有点奇怪:为什么每次获取新行时都要遍历$data?你是不是想这么做:
while ($row = mysql_fetch_array($result)){
$data[] = $row;
}
foreach ($data as $row){
echo $row['...'];
}发布于 2011-12-23 17:31:11
尝试如下所示:
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)){
foreach ($row as $k=>$v){
echo $k ." = " . $v;
}
}发布于 2011-12-23 17:31:22
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)){
$data[] = $row;
foreach ($data as $col){
echo $col['...'];
}
echo '<br>';
}或
echo '<table>';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)){
$data[] = $row;
echo '<tr>';
foreach ($data as $col){
echo '<td>';
echo $col['...'];
echo '</td>';
}
echo '</tr>';
}
echo '</table'>;https://stackoverflow.com/questions/8614259
复制相似问题