从phpMyAdmin数据库表获取重复项

时间:2012-02-02 20:42:59

标签: php sql database html phpmyadmin

有人请告诉我我做错了什么吗?我是新手使用phpMyAdmin和db。

我有一个包含4个项目的数据库表。在一个简单的PHP页面上看起来很好 - 我按正确的顺序得到所有四个项目。

但如果我使用如下所示的编码<ul class="column"><li><div class="imgblock">,我会在db表中找到我最后一个条目的4个重复项。我想我必须重新安排我如何使用“,”和/等等?不确定如何......

<?php
// Make a MySQL Connection
mysql_connect("localhost", "....", "....") or die(mysql_error());
mysql_select_db("....") or die(mysql_error());

$show = "SELECT pn, pgname, img, name, price FROM prodshort";
$result = mysql_query ($show);
while ($show = mysql_fetch_array ($result))
{
$field2= $show['pn'];
$field3= $show['pgname'];
$field4= $show['img'];
$field5= $show['name'];
$field6= $show['price'];
$field7= $show['specs'];
}
?>

<!-- start -->
<ul class="column"><li><div class="imgblock">
<a href="<?echo "$field3";?>">
<img src="<?echo "$field4";?>" width="320" height="240" alt="<?echo "$field5";?>" /></a></div><br />
<a href="<?echo "$field3";?>"><?echo "$field5";?></a>
<ul class="specs">
<?echo "$field7";?></ul>
<div class="price">
#<?echo "$field2";?>&nbsp;&nbsp;&nbsp;$<?echo "$field6";?>
</div></li></ul>
<!-- end -->

1 个答案:

答案 0 :(得分:2)

以上可能不是示例中的代码,因为while循环不在您的项目中。

应该更像这样:

while ($show = mysql_fetch_array ($result)) {
    $field2= $show['pn'];
    $field3= $show['pgname'];
    $field4= $show['img'];
    $field5= $show['name'];
    $field6= $show['price'];
    $field7= $show['specs'];
?>
<!-- start -->
<ul class="column">
    <li>
        <div class="imgblock">
            <a href="<?echo "$field3";?>">
                <img src="<?echo "$field4";?>" width="320" height="240" alt="<?echo "$field5";?>" />
            </a>
        </div>
        <br />
        <a href="<?echo "$field3";?>"><?echo "$field5";?></a>
        <ul class="specs">
            <?echo "$field7";?>
        </ul>
        <div class="price">
        #<?echo "$field2";?>&nbsp;&nbsp;&nbsp;$<?echo "$field6";?>
        </div>
    </li>
</ul>
<!-- end -->
<?
// end of while loop
}
?>

(如果您正确缩进代码,您可能会发现调试更容易,大多数编辑都是免费执行此操作; - )