php - 从mysql表中删除密码?

标签 php mysql

我需要从 mysql 的成员表中的密码字段中删除密码。

如果我将 $password 和 password 更改为 $id 和 id,我有这些代码可以使用,但它会删除整个用户帐户。我只需要移除/删除用户密码。

删除.php

<?php

$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name="members"; // Table name

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// get value of id that sent from address bar
$id=$_GET['id'];

// Delete data in mysql from row that has this id
$sql="DELETE FROM $tbl_name WHERE password='$password'"; <<<< if i change this to id=$id the script will work but it will remove the entire account!! 
$result=mysql_query($sql);

// if successfully deleted
if($result){
echo "Deleted Successfully";
echo "<BR>";
echo "<a href='suspend.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?>

<?php
// close connection
mysql_close();
?>

这是我的 List.php

<?php

$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name="members"; // Table name

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// select record from mysql
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);
?>

<table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td colspan="5" bgcolor="#FFFFFF"><strong>Delete data in mysql</strong> </td>
</tr>

<tr>
<td align="center" bgcolor="#FFFFFF"><strong>Id</strong></td>
<td align="center" bgcolor="#FFFFFF"><strong>Username</strong></td>
<td align="center" bgcolor="#FFFFFF"><strong>Email</strong></td>
<td align="center" bgcolor="#FFFFFF"><strong>Pass</strong></td>
<td align="center" bgcolor="#FFFFFF">&nbsp;</td>
</tr>

<?php
while($rows=mysql_fetch_array($result)){
?>

<tr>
<td bgcolor="#FFFFFF"><? echo $rows['id']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['username']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['email']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['password']; ?></td>
<td bgcolor="#FFFFFF"><a href="delete_ac.php?id=<? echo $rows['id']; ?>">Ban and Remove</a></td>
</tr>

<?php
// close while loop
}
?>

</table>

<?php
// close connection;
mysql_close();
?>

我怎样才能删除/删除成员表中的密码字段?

最佳答案

RDBMS 不适用于列,它们适用于行。 INSERT、SELECT、DELETE 和 UPDATE 都旨在在而不是的上下文中工作。

这意味着,如果您想“删除”用户的密码,您真正想要做的是UPDATE 将密码设为NULL该用户(WHERE user_id = 12345)。

如果您发出 DELETE,无论您的 WHERE 条件如何,您都是在告诉数据库完全删除该行。这意味着数据库将不再包含该用户。

关于php - 从mysql表中删除密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14736571/

相关文章:

php - 在 WooCommerce 订单中显示 ACF 订单自定义字段

PHP_SELF 调用同一文件

php - 我应该以哪种格式期望提交的文本区域中的换行符

mysql - MYSQL中如何根据一个字段的值连接列

mysql - 静态加密和/或 AES_ENCRYPT

php - 具有超过 1 个 IN 函数的安全 pdo mysql 语句

php - 简单 XML 命名空间警告

php - Laravel-友谊

php - 将图像存储在 mysql 数据库中不起作用。现在怎么办?

php - 如何在 PHP 中使用 MaxMind GeoIP?