删除PHP MySQL生成的表中的记录

时间:2016-09-30 08:40:30

标签: php html html-table

我正在创建一个系统,其中数据库中的记录需要显示在HTML表中。 HTML表和获取数据工作正常。 但是我需要一个列,每行都有一个删除图标/链接。 例如,第一行将有一行数据,而在最后一列中有一行X用于删除。 它之前工作正常,但现在我需要更新从MySQL到MySQLi的所有内容。 生成我的表的旧方法不再有效(使用for循环和php),所以我必须使用while循环。

请参阅我的代码。

<table align="center" cellpadding="10px">
<tr>
    <td>
        <?php
        echo "<table align=center; width=833; height=102; border=1>"; //begin table tag...

        echo "<tr bgcolor=#eeeeee>";
        echo "<td>" . "Locomotive" . "</td>";
        echo "<td>" . "Headcode" . "</td>";
        echo "<td>" . "Seen At" . "</td>";
        echo "<td>" . "Train Origin" . "</td>";
        echo "<td>" . "Train Destination" . "</td>";
        echo "<td>" . "On" . "</td>";
        echo "<td>" . "At" . "</td>";
        echo "<td>" . "Action" . "</td>";
        echo "</tr>";

        while ($rowitem = mysqli_fetch_array($dataresults)) {
            echo "<tr>";
            echo "<td>" . $rowitem['Class'] . $rowitem['Number'] . "</td>";
            echo "<td>" . $rowitem['Headcode'] . "</td>";
            echo "<td>" . $rowitem['SightedLocation'] . "</td>";
            echo "<td>" . $rowitem['TrainOrigin'] . "</td>";
            echo "<td>" . $rowitem['TrainDestination'] . "</td>";
            echo "<td>" . $rowitem['SightingDate'] . "</td>";
            echo "<td>" . $rowitem['SightingTime'] . "</td>";
            echo "<td>" . <a href = "SightingHome.php?d=1&id=<?php echo $rowitem['SightingID'] ?>" <img src = 'Images/delete.png' title = "Delete This Sighting" width = "25" height = "24" /> </td>;
            echo "</tr>";
        }
        echo "</table>";
        ?>
    </td>
</tr>

问题是我正在努力将PHP放在行内的行中,最后一个回显在底部表中。

如果有人需要完整的代码,我可以提供。

PS:dataresults是以下

    $UserName = $_SESSION['UserID'];
    $SightingData = "SELECT * from tblsightings WHERE UserID = '$UserName' ORDER BY SightingDate DESC" ;

    $dataresults = mysqli_query($connection,$SightingData);

我只是在我已经拥有的旧系统上重建新系统,但是自从我做PHP以来已经有几年了。 新网站http://trainmania100.x10host.com/

2 个答案:

答案 0 :(得分:0)

您执行操作的行未写正确。将其更改为:

 echo '<td><a href="SightingHome.php?d=1&id='. $rowitem['SightingID'] .'">  <img src="Images/delete.png" title="Delete This Sighting" width="25" height="24" /></a></td>';

答案 1 :(得分:0)

我认为问题是你用错误的方式混合html和php。

就像你在<a href=...>上使用echo一样,这不能理解为PHP代码,因为它应该是一个字符串。所以你有一些挣扎的"被理解为停止字符串的东西,而不是作为字符串的一部分。因此,您必须先添加\,然后将其作为字符串的一部分进行读取。

更改此行:

 echo "<td>" . <a href = "SightingHome.php?d=1&id=<?php echo $rowitem['SightingID'] ?>" <img src = 'Images/delete.png' title = "Delete This Sighting" width = "25" height = "24" /> </td>;

到:

echo "<td> <a href =\"SightingHome.php?d=1&id=" . $rowitem['SightingID'] . "<img src = 'Images/delete.png' title = \"Delete This Sighting\" width = \"25\" height = \"24\" /></td>";

moni_dragu 的答案使其更清晰,使用'启动字符串并将"作为字符串的一部分包含在内,因此您无需使用每个\前面"