php - 安全的 PHP 查询?

标签 php mysql email

我有一个页面来激活点击我发送给他们的电子邮件中的激活链接的用户,该电子邮件包含一个 url,该 url 使用 GET 方法将电子邮件地址发布到那里,我的代码如下但我问的是这是一个安全的方法或者有什么方法可以改进吗?谢谢

$username = $_GET['email']; 

mysql_query("UPDATE users SET active = 'yes'
WHERE email = '$username'") or die('oops!');

echo "<meta http-equiv=\"refresh\" content=\"0;URL=/index.php?msg=active\">";

最佳答案

这不是激活电子邮件的最佳方法。任何人都可以使用假电子邮件注册并创建自己的 GET 请求来激活它。您应该改用无法猜测的唯一哈希。此外,您需要使用 mysql_real_escape_string 转义您的 SQL 语句。

关于php - 安全的 PHP 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6389682/

相关文章:

php - 具有独特提交按钮的 echo 阵列

mysql - 将 3 个表连接到第一个表的多个列中

php - 以数据库中的纯文本形式(而不是数组)显示用户的名字和姓氏

java - 电子邮件地址验证与发送邮件进行激活?

php - wp_mail(Wordpress 邮件功能)未发送到 gmail 或 live.co.uk 帐户

javascript - php 响应变得非常慢(使用 mysql)

php - WordPress:如何按meta_value按降序顺序从wp_posts和wp_postmeta获取记录?

email - 电子邮件 mailto 链接是有效的 URL 吗?

javascript - Symfony2 将ajax请求数据传递给表单渲染 Controller

php - 根据 "major"操作将数据存储到 session 中并存储到数据库中