表单正常,它可以正确捕获所有信息,但是,当我使用函数生成用于激活用户的随机字符串时,错误就开始了。
function generateActivationString() {
$randomSalt = '*&(*(JHjhkjnkjn9898';
$uniqId = uniqid(mt_rand(), true);
return md5($randomSalt.$uniqId);
}
if (!get_magic_quotes_gpc()) {
// $_POST['pass'] = addslashes($_POST['pass']);
$username = addslashes($_POST['username']);
$firstname = addslashes($_POST['firstname']);
$surname = addslashes($_POST['surname']);
// $_POST['email'] = addslashes($_POST['email']);
$email = mysql_real_escape_string(addslashes($_POST['email']));
$pass = mysql_real_escape_string(sha1($_POST['pass']));
$activationString = generateActivationString();
}
$insert = "INSERT INTO users (username, password, firstname, surname, email, activation_string)
VALUES ('".strtolower($username)."', '".$pass."', '".strtolower($firstname)."', '".strtolower($surname)."', '".strtolower($email)."', '".$activationString."')";
这是echoed insert语句:
INSERT INTO users (username, password, firstname, surname, email, activation_string) VALUES ('', '', '', '', '', '')
我知道它已经创建了一个新条目,因为填充了auto_increment id行,但其他字段的其余字段仍为空。
这是generateActivationString()的代码,所以我知道它也在工作! - 264361eeb6e75d3934ce249a0d05f2c1
任何建议都非常受欢迎,非常感谢!
答案 0 :(得分:1)
严格遵守上述代码,$username
,$password
等变量属于if
块的范围,将其移至if
之外。< / p>
答案 1 :(得分:0)
我没有看到你在任何地方发送该查询,也许这是你的问题......
答案 2 :(得分:0)