0

我是Web开发的初学者。我制作了一个简单的表格,显示了我插入到数据库中的笔记的 ID、答案和日期。我需要一个简单的脚本来显示每个笔记的删除按钮。我想知道如何获取需要删除的每一行的 id。这是我的php代码:

<html>
<body>
<?php
 include '..//config.php';
 $result = mysql_query("SELECT * FROM **** Order by `id` ASC");
echo "<center><table width='400' border='1'>
<tr>
<th bgcolor='#D6D6D6' >ID</th>
<th bgcolor='#D6D6D6'>Answer</th>
<th bgcolor='#D6D6D6'>Date</th>
<th bgcolor='#D6D6D6'>Preview</th>
<th bgcolor='#D6D6D6'>Delete</th>
</tr>";


while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td bgcolor='#3399FF' scope='col width ='10%'>" . $row['id'] . "</td>";
  echo "<td width ='10%'>" . $row['answer'] . "</td>";
  echo "<td  bgcolor='#3399FF' scope='col width ='10%'>" . $row['date'] . " </td>";   
     if ($row['hidden'] > 'http://www.********/upload/upload/') {
  echo "<td width ='10%'><a href =" . $row['hidden'] . "><center>View</center></a></td>"; } else {echo "<td width ='10%'>" . $row[''] . "</td>";}
   echo "<td width ='10%'><a href = 'dlt.php'>Delete</a></td>";
   $row_id = $row['id'];
          }
  echo "</tr width ='10%'>"; 
  echo "</table></center>";
?>
</body>
</html>
4

1 回答 1

1

从您的问题中不清楚您的要求是什么,但我假设您想知道id当您单击“删除”链接(链接到dlt.php)时如何传递条目。

您可以将查询字符串参数传递给dlt.php条目id

我已经清理了您的代码并在下面进行了修改:

<!Doctype html>
<html>
    <body>
    <?php
        include '../config.php';
        $result = mysql_query("SELECT * FROM **** Order by `id` ASC");
    ?>
        <center>
            <table width='400' border='1'>
                <tr>
                    <th bgcolor='#D6D6D6'>ID</th>
                    <th bgcolor='#D6D6D6'>Answer</th>
                    <th bgcolor='#D6D6D6'>Date</th>
                    <th bgcolor='#D6D6D6'>Preview</th>
                    <th bgcolor='#D6D6D6'>Delete</th>
                </tr>

                <?php
                    while ($row = mysql_fetch_array($result)) {

                        $row_id = $row['id'];
                        ?>
                        <tr>
                            <td bgcolor='#3399FF' scope='col' width='10%'><?php echo $row_id; ?></td>
                            <td width='10%'><?php $row['answer']; ?></td>
                            <td  bgcolor='#3399FF' scope='col' width ='10%'><?php $row['date']; ?></td>
                            <td width ='10%'>
                                <?php
                                    // I am not exactly sure what this line was meant to do in your code
                                    if ($row['hidden'] > 'http://www.********/upload/upload/') {
                                        echo "<a href='" . $row['hidden'] . "'><center>View</center></a>";
                                    }
                                ?>
                            </td>
                            <td width ='10%'><a href='dlt.php?id=<?php echo $row_id; ?>'>Delete</a></td>

                        </tr>

                        <?php
                    }

                ?>
            </table>
        </center>
    </body>
</html>

然后在您的dlt.php文件中,您可以使用以下行检索id要删除的内容:

if (isset($_GET['id']) {
    $delete_id = $_GET['id'];
}
else {
    // no 'id' has been passed.
    die('Nothing to delete!');
}
$result = mysql_query("DELETE FROM **** WHERE `id` = $delete_id");

由于您是 Web 开发(或一般开发)的新手,因此您应该非常小心以下几件事:

  1. 编写带有适当缩进的干净代码。它可以帮助您快速发现和调试问题。
  2. 编写符合 W3C 标准的代码。
  3. 了解您要使用的技术 API 并注意已弃用的功能。例如,在 PHP 中,mysql_*函数已被弃用。您应该使用mysqliorPDO代替。

我会提出更多的观点,但列表实际上可能会变得很长。这些应该对初学者有好处。

于 2012-12-22T13:45:39.903 回答