0

mysql の members テーブルの password フィールドからパスワードを削除する必要があります。

$password とパスワードを $id と id に変更すると機能するこれらのコードがありますが、ユーザー アカウント全体が削除されます。ユーザーのパスワードを削除/削除するだけです。

delete.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();
?>

メンバーテーブルのパスワードフィールドを削除するにはどうすればよいですか?

4

3 に答える 3

3

RDBMS は列では機能せず、行で機能します。INSERT、SELECT、DELETE、および UPDATE はすべて、列ではなく行のコンテキストで機能することを意図します

これが意味することは、ユーザーからパスワードを「削除」したい場合、本当に必要なのはそのユーザーUPDATEのパスワードNULL( WHERE user_id = 12345) であるということです。

を発行するDELETEと、基準に関係なくWHERE、データベースに行を完全に削除するように指示しています。これは、データベースにそのユーザーがまったく含まれなくなることを意味します。

于 2013-02-06T18:58:40.690 に答える
0

あなたがやりたいUPDATEのは記録であって、それではなくDELETE

$sql="UPDATE $tbl_name SET password = '' WHERE id='$id'";
于 2013-02-06T18:54:22.270 に答える
0

フィールドを削除しないでください。NULL または空に更新するだけです。

$sql="UPDATE $table_name SET password='' where id=$id"; <<<< if i change this to id=$id the script will work but it will remove the entire account!! 
$result=mysql_query($sql);  

また

$sql="UPDATE $table_name SET password=NULL where id=$id"; <<<< if i change this to id=$id the script will work but it will remove the entire account!! 
$result=mysql_query($sql);
于 2013-02-06T18:56:32.523 に答える