如何使用php删除整行?

时间:2016-02-24 08:50:58

标签: php mysql database delete-row

我正在创建一个应用程序,用户可以使用他们的电子邮件和密码进行注册和登录。用户可以拥有自己的个人资料,如姓名,地址等。我还创建了DELETE BUTTTON,以便用户可以删除他们的整个帐户。 我希望用户点击DELETE BUTTON并要求他们的电子邮件和密码删除他们的整个帐户?下面是要删除的代码,但这只是删除代码中写的内容,我想请个别用户输入他们的电子邮件和密码只能删除自己的ROW。

<?php
$servername = "host";
$username = "username";
$password = "password";
$dbname = "myDB";

// 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 user_id=13";

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

mysqli_close($conn);
?>

Here in picture one user having user id 13 want to delete his account (entire row)

3 个答案:

答案 0 :(得分:0)

首先,您应该离开mysql_*并开始使用PDOmysqli(因为不推荐使用mysql_ *,现在已在新版本中将其删除)。

您所需的请求只是DELETE FROM users WHERE user_id=13,只需要提取表单并仅在获取的数据等于用户填写的数据时执行查询。

答案 1 :(得分:-1)

在SQL中有一个DELETE语句,使用它可以很容易地删除整行,例如,在你的情况下,查询看起来像,

DELETE from table_name
WHERE email=xyz;

这将完全删除电子邮件等于xyz的帐户的数据,您可以将table_name和xyz替换为您自己的帐户。然后查询将按预期工作。 有关如何使用DELETE语句的更多信息,请访问SQL DELETE Statement

注意:您也可以在where子句中使用User_ID而不是email,然后它会根据user_id过滤结果,但请确保它是唯一的,否则所有包含User_ID或电子邮件的行都将被删除

答案 2 :(得分:-1)

当用户点击删除按钮时,显示用于电子邮件和密码确认的html / php表单。我认为电子邮件是您的用户的关键信息,所以当提交该表单时,请在变量中输入电子邮件:$ email_variable例如在sql中执行此操作: &#34; DELETE FROM tablename WHERE email =&#39;&#34;。$ email_variable。&#34;&#39;&#34;