2018-04-26 15:21
浏览 86


I am trying to add records from my database to a table as a list of links that takes the user to a more details page about vendors they can view. But only the first record is being put in the table where as the rest are appearing as a jumbled up mess outside the table at the bottom of it.

Can anyone see what I've done wrong with my table echos?


$link = mysqli_connect("localhost", "root", "root") or die(mysqli_error($db));
mysqli_select_db($link, "keepers")
or die(mysqli_error($link));

// Check connection
if($link === false)
    die("ERROR: Could not connect. " . mysqli_connect_error());
    <meta name="author" content="Nigel Kennington">
    <meta name="description" content="Find local honey near you">
    <meta name="keywords" content="honey, bees, bee, local">
    <link href="bees.css" type="text/css" rel="stylesheet">

    <div id="linkbar">
        <table height="140px" ID="Table1">
                <td valign="bottom"><a href="index.php">Home</a>&nbsp;&nbsp;|</td>
                <td valign="bottom"><a href="about.html">About</a>&nbsp;&nbsp;|</td>
                <td valign="bottom"><a href="contact.html">Contact</a></td>

    <div id="bulk">
        <table width="100%" border="0" cellpadding="0" cellspacing="0" ID="Table1">
            <tr id="spacer">
                <td class="leftnav" align="right" valign="top" nowrap width="120px">
                    <h5>Find Honey from:</h5>
                    <p><a href="HaL.php">Highlands and Islands</a></p>
                    <p><a href="NES.php">North Eastern Scotland</a></p>
                    <p><a href="ES.php">Eastern Scotland</a></p>
                    <p><a href="SWS.php">South Western Scotland</a>
                    <h5>List your produce:</h5>
                    <p><a href="keeperlogin.php">Keepers Page</a></p>
                        $sql = "SELECT * FROM keepers WHERE area = 'HaI'";
                        $result = mysqli_query($link, $sql);

                                echo "<table width=100% border='1'>
                                <th><p class='success'>Shop Name</p></th>
                                <th><p class='success'>Shop Email</p></th>
                                <th><p class='success'>Town</p></th>
                                <th><p class='success'>Phone Number</p></th>
                                <th><p class='success'>Mobile Number</p></th>

                            while($row = mysqli_fetch_assoc($result))
                                $id = $row['ID'];

                                echo "$id";
                                echo "<tr>";
                                echo "<td> <a href='viewdetails.php?id=$id'>" . $row['shop_name'] . "</a> </td>";
                                echo "<td> <a href='viewdetails.php?id=$id'>" . $row['shop_email'] .  "</a> </td>";
                                echo "<td> <a href='viewdetails.php?id=$id'>" . $row['town'] . "</a> </td>";
                                echo "<td> <a href='viewdetails.php?id=$id'>" . $row['phone_number'] . "</a> </td>";
                                echo "<td> <a href='viewdetails.php?id=$id'>" . $row['mobile_number'] . "</a> </td>";
                                echo "</tr>";

                                echo "</table>";



    <div id="footer">
        © 2008 | <A href="privacy.html">Privacy Policy</A> | 
        <A href="terms.html">Terms of Use</A>


enter image description here

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • doubomudichen0832 2018-04-26 15:28

    Take echo "</table>"; out of the while loop and put it after the closing bracket.

    解决 无用
    打赏 举报
  • 查看更多回答(1条)

相关推荐 更多相似问题