我有一个表格用下面的代码来注册:的MySQL不添加到数据库
<form method="post">
Username<input type="text" size="12" maxlength="16" name="username"><br />
Password<input type="password" size="12" maxlength="32" name="password"><br />
<input type="submit" name="submit" value="Sign Up!" />
</form>
然后我把它也检查,如果用户名包含任何特殊字符,如果它没有运行该代码:
define("DB_SERVER", "localhost");
define("DB_USER", "will");
define("DB_PASS", "blahblah");
define("DB_NAME", "blahblah");
define("TBL_USERS", "users");
$connection = mysql_connect(DB_SERVER, DB_USER, DB_PASS) or die(mysql_error());
mysql_select_db(DB_NAME, $connection) or die(mysql_error());
function addNewUser($username, $password){
global $connection;
$username =$POST['username'];
$password =$_POST['password'];
$password1 = md5($password);
$q = "INSERT INTO ".TBL_USERS." VALUES ('$username', '$password1')";
return mysql_query($q, $connection);
}
这应的用户名和密码添加到我的表,密码为MD5哈希,但它并没有,可能有人请帮助我。
谢谢!
首先是强制性[xkcd](http://xkcd.com/327)。但是,无论如何,我真的建议您阅读[这篇文章](http://www.phpfreaks.com/tutorial/php-security)了解PHP安全缺陷的一些知识。 – Znarkus 2011-03-12 21:36:53