重复的用户名(这是我第一次尝试用PHP)我如何防止PHP/MySQL的
有一个非常基本的注册页面。 http://graves-incorporated.com/test_sites/member_test/register/register.php
*我只记得PHP代码不会在源显示所以在这里,它是:
enter code here
<?php
include('connection.php');
if(isset($_POST['form'])){
if(empty($_POST['username']) || empty($_POST['password']) || empty($_POST['conf_pass']) || empty($_POST['email'])){
echo '<b>Please fill out all fields.</b>';
}elseif($_POST['password'] != $_POST['conf_pass']){
echo '<b>Your Passwords do not match.</b>';
}else{
$url = 'http://graves-incorporated.com/test_sites/plantation_park_2012/';
echo '<META HTTP-EQUIV=Refresh CONTENT="2; URL='.$url.'">';
echo '<b>Congrats, You are now Registered.</b>';
mysql_query("INSERT INTO users VALUES(NULL, '$_POST[username]', '$_POST[password]', '$_POST[email]')");
}
}
?>
我要确保我没有得到重复的用户和/或电子邮件地址在数据库中。我在MySQL中为用户名和电子邮件设置了一个唯一密钥,这可以防止它,但实际表单上的用户不知道,它仍然告诉他们“恭喜,您已注册”或者无论它说什么......哈哈
那么,我可以添加到PHP代码(以及代码中的哪个地方),以防止这种情况?
感谢您帮助这个大菜鸟, 丹格雷夫斯
你需要检查'插入'查询是否失败。如果确实如此 - 请使用'mysql_error()' – zerkms 2012-03-07 09:54:29
查看消息,你能告诉我如何输入吗? php对我来说实际上是一门外语。我尽可能快地学习它,但仍然没有完全掌握它。haha – 2012-03-07 09:56:53
查找SQL注入攻击;你的代码是不安全的。 – James 2012-03-07 09:57:19