我正在使用php和sql,我正在使用这个表
所以它有一个串行列user_id
,用作主键(auto_increament)。现在,如果用户想要删除他的个人资料,我正在使用
<?php
$sql='DELETE FROM userinfo WHERE user_name="'.$_SESSION["username"].'"';
?>
它的工作正常。$_SESSION["username"]
是被放入的用户的名字。和用户名也是唯一的。但是现在主键的用途是什么,我如何使用相应的主键来删除username
。这只是一个例子。我现在有评论表,如果用户删除评论我必须定义&#39; blog_name&#39;,&#39; username&#39;,&#39; comment_time&#39;然后它选择我想要删除的欲望评论,所以这里我也可以使用主键删除该内容,
答案 0 :(得分:1)
当用户登录时,将主键值(user_id)存储在会话变量中,并在删除查询中使用它。
要删除评论,请使删除链接将与该评论对应的主键传递给删除查询。
例如:你有一个删除按钮,当用户点击该按钮时会重定向到发生删除的php页面
<a href="deletion.php?pk='put the primary key for that comment here'"><button>Delete</button></a>
deletion.php
您可以从$_GET[pk]
获取该评论的主键。
用它来删除评论。
确保通过使用登录用户的会话变量来检查尝试删除评论的用户是发布评论的用户。
此方法需要从当前页面重定向到delete.php,然后再返回当前页面。 如果你想避免这种情况,可以使用ajax在后台传递值,只刷新页面的注释部分。