2010-04-20 97 views
0

我有下面的代码,我试图让每个“网友发帖”成seprate DIV,目前它显示一个DIV所有的职位。肯定它的简单我刚刚搞砸了,这还没有完成,所以代码中的某些部分仍然存在漏洞。遍历数组,输出中进div的

<?php 

if (loggedin()) 
{ 

$ID = getID(); 
$query = "SELECT * FROM `posts`"; 
$result=mysql_query($query); 
$count=mysql_num_rows($result); 


while ($row = mysql_fetch_array($result)) 
{ 

echo '<div id="posts">'; 
echo "<br />".$row['2']."<br />"; 
echo "</div>"; 
} 

} 
else 
{ 
    echo "Not Logged In"; 
} 
?> 

谢谢:)

+0

这应该很好地工作。你是否检查过源代码以确保它们实际上都在同一个div中? – Jeriko 2010-04-20 13:18:52

回答

0

你正在做的,除非你不使用clearmargin-top,使它们出现在下面互相在距离稍细:

while ($row = mysql_fetch_array($result)) 
{ 
    echo '<div id="posts" style="clear:both; margin-top:20px;">'; 
    echo "<br />".$row['2']."<br />"; 
    echo "</div>"; 
} 
+0

谢谢,工作正常,不清楚在CSS中。 :d – Elliott 2010-04-20 13:19:45

+0

@Elliott:欢迎您............. – Sarfraz 2010-04-20 13:20:41

+0

为什么要清除,为什么你保持OP的'br' S' – ANeves 2010-04-20 13:25:26

0

第一,最重要的是,ID的HTML中必须是唯一的你循环分配相同ID你所有的div -tags。

否则这一切都正确,你将数据放入单独的div已,就像Sarfranz说。也许你只需要添加一些CSS使其显而易见。

贝娄应该会更好。

<?php 

if (loggedin()) 
{ 

$ID = getID(); 
$query = "SELECT * FROM `posts`"; 
$result=mysql_query($query); 
$count=mysql_num_rows($result); 

$i= 0; 

while ($row = mysql_fetch_array($result)) 
{ 

echo '<div id="post_'.$i.'" style="border-bottom:1px #333333 dashed; margin-top:5px;">'; 
echo $row['2']; 
echo '</div>'; 
$i++; 
} 

} 
else 
{ 
    echo "Not Logged In"; 
} 
?>