首页 > 解决方案 > 我的记录表上的删除链接不起作用 php

问题描述

我有一个表格,显示标题和名字列,并在第三列删除链接。

不幸的是,由于我不明白的原因,单击“删除”链接时不会删除记录。

请朋友们帮我弄清楚这里出了什么问题。

<?php 

  $user_id = $_SESSION["user_id"]; //brought here via 
                                    session
   //select statement here
  // output data of each row
  while($row = $result->fetch_assoc()) {

    echo '<tr>
              <td scope="row">' . $row["titled"]. '</td>
              <td> '.$row["firstname"] .'</td>
              <td><a href="user_delete.php? 
                  delete=$row[user_id]">Delete</a>
              </td>


          </tr>';
   }


   } else {
   echo "0 results";
   }


   ?>    

user_delete.php 代码

   <?php
   session_start();
    require_once $_SERVER['DOCUMENT_ROOT'] . 
   `enter code here`'/soap/includes/server.php';


    if(isset($_GET["delete"]) )
   {
    $user_id = $_GET["delete"];
    $sql= "DELETE FROM users WHERE user_id='$user_id'";
    $res= mysqli_query($con, $sql) or 
    die("Failed".mysqli_error($con));
    echo "<meta http-equiv='refresh' 
    content='0;url=user_settings.php'>";
    }
    ?>

标签: phpmysql

解决方案


虽然您必须调试代码并添加结果以检查可能是什么问题。但我认为一个问题是在单引号字符串中使用变量 $row[user_id] 。PHP 不解析单引号字符串中的变量。因此,要么将所有 html 代码从单引号转移到双引号,要么至少像其他 $row[firstname] 一样附加 $row[user_id]

echo '<tr>
          <td scope="row">' . $row["titled"]. '</td>
          <td> '.$row["firstname"] .'</td>
          <td><a href="user_delete.php? 
              delete='.$row["user_id"].'">Delete</a>
          </td>


      </tr>'

推荐阅读