[英]Ordered list repeats number 1
我的index.php文件:
<?php
$query = mysql_query("SELECT `pic_id` FROM image_tag ORDER BY `pic_id`");
while($run = mysql_fetch_array($query)){
$pic_id = $run['pic_id'];
$left = $run['left'];
$top = $run['top'];
?>
<div id = "taggednum" style = "top:<?php echo $top; ?>; left:<?php echo $left; ?>;">
<ol><li rel ="<?php echo $pic_id; ?>"></li></ol>
</div>
<?php
}
?>
它在列表上没有显示正确的数字。 整个列表的编号为“ 1”。 这里有什么问题?
您始终使用<ol></ol>
重新启动订单列表。 要修复,您应具有以下结果:
<ol>
<li>item 1
<li>item 2
</ol>
为此,请将您的<ol>
和</ol>
标记放在while
循环之外。
您每次都将<ol>
和</ol>
放在其中。 你不应该
<div id = "taggednum">
<ol><?php
$query = mysql_query("SELECT `pic_id`, `left`, `top` FROM image_tag ORDER BY `pic_id`");
while($run = mysql_fetch_array($query)){
$pic_id = $run['pic_id'];
$left = $run['left'];
$top = $run['top'];
?><li style="top:<?php echo $top; ?>; left:<?php echo $left; ?>;" rel="<?php echo $pic_id; ?>"></li><?php
}
?></ol>
</div>
while
循环时将<ol>
放在一边
请检查代码的这一部分,
$left = $run['left'];
$top = $run['top'];
我猜你应该在查询中使用*
<div id = "taggednum">
<ol>
<?php
$query = mysql_query("SELECT `pic_id` FROM image_tag ORDER BY `pic_id`");
while($run = mysql_fetch_array($query)){
$pic_id = $run['pic_id'];
$left = $run['left'];
$top = $run['top'];
?>
<li rel ="<?php echo $pic_id; ?>" style = "top:<?php echo $top; ?>; left:<?php echo $left; ?>;"></li>
<?php
}
?>
</ol>
</div>
这应该可以解决问题。 每次创建一个新的有序列表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.