以下是我的代码,记录显示在四列中,但如果我的记录为空白,则会显示三个平面图像,是否有任何建议?
$query = mysql_query("SELECT * from rbf_events_images where event_id='".$_GET['id']."'");
echo '<table border="1">';
if(count(mysql_num_rows($query)>0)):
$tropentags='<tr>';
$troclosingtags='</tr>';
$formTags="";
$tdTags="";
$count=1;
while($row = mysql_fetch_array($query)){
$tdTags.='<td align="left" valign="middle" class="td" >$row['image']</td>';
if ($count>3)
{
$formTags.=$tropentags.$tdTags.$troclosingtags;
$tdTags="";
$count=0;
}
$count=$count+1;
}
if ($count>0)
{
for($i = 1; $i <= (4-$count) ; $i++)
{
$tdTags.='<td align="left" valign="middle" class="td" >$row['image']</td>';
}
$formTags.=$tropentags.$tdTags.$troclosingtags;
}
echo $formTags;
endif;
感谢您的帮助!真的很感激!
答案 0 :(得分:1)
我注意到像这样的行:
$tdTags.='<td align="left" valign="middle" class="td" >$row['image']</td>';
您使用单引号(')分隔字符串,并且您还尝试在使用单引号的字符串中嵌入变量。我不确定你是怎么没有得到编译错误的。我会切换到:
$tdTags= '<td align="left" valign="middle" class="td">' . $row['image'] . '</td>';
答案 1 :(得分:0)
以下是我通常将记录放在列中的方法:
$id = mysql_real_escape_string($_GET['id']);
$query = mysql_query("SELECT * from rbf_events_images where event_id='$id'");
echo '<table border="1"><tbody><tr>';
if (mysql_num_rows($query) > 0) {
$count = 0;
while ($row = mysql_fetch_array($query)) {
if ($count && $count % 4 == 0) echo '</tr><tr>';
echo '<td align="left" valign="middle" class="td">'.$row['image'].'</td>';
$count++;
}
}
echo '</tr></tbody></table>';