无法删除以在PHP中工作

时间:2017-06-14 23:14:16

标签: php mysqli

我正在尝试添加一个删除按钮,只显示用户是否以管理员身份登录,删除按钮将删除评论页面上显示的评论,当点击删除链接时该条目应该是从数据库中删除。 每当点击删除链接时,就会出现delete.php的白色屏幕。 我无法正常工作,需要一些帮助。感谢

的comments.php

<?php
    $sql1 = "SELECT * from comments";
    $res1 = mysqli_query($connect, $sql1) or die(mysqli_error());

    while ($row1 = mysqli_fetch_assoc($res1)) {
        if ($_SESSION['username'] == 'admin') {
          echo "<tr><td>".$row1['username']."<br />
          <br />" .$row1['comment']."&nbsp;&nbsp;&nbsp; <a href='delete.php?id=".$row1['id']."'>Delete</a><br><hr /></td></tr>";    

       } else {
         echo "<tr><td>".$row1['username']."<br /> <br />" .$row1['comment']."<hr /></td></tr>";

      }


  }

?>

delete.php

<?php

include_once("connect.php");
session_start();

    $id = $_GET['id'];

    $sql = "DELETE * from comments where id = '".$id."' ";
    $res = mysqli_query($connect, $sql);
    if(($res)) {
        echo "Records deleted successfully";
        header("location: Comments.php");
    } else { 
        echo "Could not delete record $sql" . mysqli_error($connect);
    }

?>

1 个答案:

答案 0 :(得分:1)

您不能在标题(...)之前使用echo。因此,如果您删除它,您的代码应该更好。

您的SQL请求不正确,您需要删除*,如:

DELETE FROM comments where id = '".$id."'

为了安全起见,你需要添加一个die();在每个标题之后(&#39;位置:...&#39;)。每个人都可以轻松绕过HTTP重定向。