尝试创建删除按钮以删除数据库中的记录

Posted

技术标签:

【中文标题】尝试创建删除按钮以删除数据库中的记录【英文标题】:Trying to create delete button to delete records in database 【发布时间】:2018-11-27 10:20:55 【问题描述】:

我正在做一个学校项目。

这个项目的意思是我创建了一个login/registration form

我可以在哪里注册、登录、查看记录。

但是我还需要制作一个下拉菜单,如果我可以看到所有记录(用户),并且在它下面我需要制作一个按钮,当我选择一个记录/用户并按下删除按钮时,它需要从中删除数据库。我不知道我该怎么做。

这是我的代码:

<?php

包括(“connectie.php”); 包括(“deletecode.php”);

$conn = new mysqli("localhost", "student14_admin", "lol12345","student14_jordi");
mysqli_select_db($conn,'student14_jordi');

$sql = "DELETE FROM users WHERE ID='$_GET[id]'";



echo "<select name='user'>";
    if ($result->num_rows>0) 
    while($row = $result->fetch_assoc()) 
        echo "<option value=" . $row['username'] . ">" . $row['username'] . "</option>";
    
    
    echo "</select>";

?>


<form action="">
<a class="delete" href="delete.php?id=<?php echo $row['id']; ?>">Delete</a>
</form>

【问题讨论】:

【参考方案1】:

创建一个按钮并将其命名为删除

<a class="delete" href="delete.php?id=<?php echo $row['id']; ?>">Delete</a>

然后创建一个 delete.php 文件并在其中保存这些代码。

<?php include_once 'db_config_filename.php';
 // get id value
 $id = $_GET['id'];

// sql to delete a record
$sql = "DELETE FROM tablename WHERE id='$id'";

// print_r($sql);

if (mysqli_query($conn, $sql)) 
   echo "Record deleted successfully";
 
else 
    echo "Error deleting record: " . mysqli_error($conn);


 //redirect here
include 'data.php';

?>

【讨论】:

我更新了代码现在我还有一个额外的文件用于删除代码 语法问题 DELETE FROM users WHERE id =$_GET['id'];仍然没有看到我无法得到你的所有代码 对不起,我不明白那我需要做什么?因为现在没有任何工作【参考方案2】:

我几乎让它工作了。我现在有这个代码:

delete.php:

<?php

include ("connectie.php");


$sql = "SELECT * FROM users ";
$result = $conn->query($sql);

echo "<select name='user'>";
    if ($result->num_rows>0) 
    while($row = $result->fetch_assoc()) 
        echo "<option value=" . $row['username'] . ">" . $row['username'] . " 
</option>";
    
    
    echo "</select>";

?>


<form action="" method="GET">
<input type="hidden" name="id" value=".$row['id']." />
<input type="submit" name="delete" value="verwijderen">
</form>

<?php
    include ("deletecode.php");
?>

Deletecode.php:

<?php
$servername = "localhost";
$username = "student14_admin";
$password = "lol12345";
$dbname = "student14_jordi";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) 
die("Connection failed: " . mysqli_connect_error());


// sql to delete a record
$sql = "DELETE FROM users WHERE id=3";

if (mysqli_query($conn, $sql)) 
echo "Record deleted successfully";
 else 
echo "Error deleting record: " . mysqli_error($conn);


mysqli_close($conn);
?>

这仅适用于记录 3。但现在我需要它,如果我从下拉菜单中选择一条记录并单击删除按钮,它需要从我的数据库中删除该记录。

【讨论】:

以上是关于尝试创建删除按钮以删除数据库中的记录的主要内容,如果未能解决你的问题,请参考以下文章

制作删除按钮以删除 inputtext 字段中的文本

如何获取隐藏的 ID 以删除 jQuery 数据表中的记录

删除 CoreData 实体中的所有记录

如何制作按钮以删除mysql字段中的值?

如何为表格中的每一行创建一个删除按钮?

在数据迁移期间删除实体中的所有记录