繁体   English   中英

如何使用MySQL和PHP安全删除显示给用户的行?

[英]How to safely delete a row shown to the user using MySQL and PHP?

我有一个php页面,用于显示MySQL表中的内容。 我想在每行上添加一个“删除按钮”,以便用户可以删除显示的内容。

事实是,尽管我要添加“ value = id”属性,但是这样安全吗? 例如,用户是否无法检查元素,编辑源并更改要删除的值?

谢谢。

注意:我并不是真正使用按钮,而是使用“ a”标签。 我不确定这是否相关。

如果您使用的是标记,请在id旁边传递id的哈希值,有很多php哈希函数可以实现此目的,向其中添加自定义盐,另一方面,您可以使用id并使用相同的方法再次对其进行哈希,您将其与传入的哈希进行比较。

但是,如果它是最终用户,则意味着您已经具有身份验证,这将为自动删除提供进一步的安全性,只需确保用户删除的ID是他的内容,这样用户就不会删除彼此的内容。

使用按钮或标签并不重要,因为最终您会将参数发送到url。

首先,您有一个用于登录用户的会话,每个用户都有由他创建的自己的内容。 因此,您必须:

  • 通过内容ID制定删除内容的途径。
  • 执行路由时,您必须检查用户是否有会话。

如果不是,请 ->将他重定向到内容页面。 如果他有会话 ->您需要检查该用户是否创建了此帖子。

如果不是 ->将他重定向到内容页面。 如果是 ->启用删除功能并删除内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM