当我运行包含“@”的字符串时,我有一个 mySQL 查询卡住了。我试过 htmlentities() 和 htmlspecialchars() 无济于事。这是我正在运行的内容:
$name=$_POST['name'];
$first=$_POST['first'];
$last=$_POST['last'];
$bio=htmlentities($_POST['bio']);
$email=htmlentities($_POST['email']);
$pass=$_POST['pass'];
$date=date("m/d/y");
$bd=date('m-d-y',strtotime($_POST['month'].$_POST['date'].$_POST['year']));
$qer="insert into everything (user,first,last,bio,email,pass,date,bd) values ($name,$first,$last,$bio,$email,$pass,$date,$bd)";
if(!(mysql_query($qer,$con))){
echo "no qer";
echo mysql_error();
}
这是错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '@re5yhgr5tyhrtyhr5tyr5tyhrt,test@first.com,pass,12/13/12,01-01-70)' 附近使用正确的语法
我最初只是在我的电子邮件参数中尝试它,但我现在知道无论它在哪里都有问题。>:|
我假设“第 1 行”是 sql 的第一行,因为我的实际第 1 行是“”...
抱歉,如果这很明显,请提前致谢!