我创建了一个页面来显示保存到数据库中的消息。消息以图片显示。我有以下的DIV布局:
<div id="MessageWrapper">
<div id="MessagePicture"></div>
<div id="MessageText">
<div id="MessageTitle"></div>
<div id="MessageContent"></div>
</div>
</div>
我想要div 'MessagePicture'和'MessageText'交替他们的位置(左和右)所以最后的代码我有:
$i = 0;
while ($Row = mysql_fetch_assoc($Result))
{
$class = (++$i % 2) ? 'even' : 'odd';
echo '
<div id="MessageWrapper">
<div id="MessagePicture" class="'.$class.'">
<style>
#MessagePicture {
background-image: url(../../../Images/'.stripslashes($Row['Code']).'.png);
background-repeat: no-repeat;
background-position: center
</style>
</div>
<div id="MessageText" class="'.$class.'">
<div id="MessageTitle">
<h1>'.$Row['NameBox'].'</h1>
</div>
<div id="MessageContent">
<p>'.nl2br($Row['MessageBox']).'</p>
</div>
</div>
</div>
我面临的问题:虽然解析的源代码在背景图像的url中有不同的代码($Row[' code ']),但所有消息都显示相同的图像。它总是第一个($Row['Code'])的第一个图像被输入到数据库。
有人知道如何解决这个问题吗?
给每个div一个唯一的id。例如:
$i = 0;
while ($Row = mysql_fetch_assoc($Result))
{
$class = (++$i % 2) ? 'even' : 'odd';
echo '
<div id="MessageWrapper'.$i.'">
<div id="MessagePicture'.$i.'" class="'.$class.'">
<style>
#MessagePicture'.$i.' {
background-image: url(../../../Images/'.stripslashes($Row['Code']).'.png);
}
</style>
... etc ...
}
你最终得到第一个div
具有MessagePicture1
的id
和相应的#MessagePicture1
样式,下一个MessagePicture2
,以此类推。