有人可以帮我修复此查询吗? 我不知道我犯了什么错误。请帮帮我......
insert into docs values('"$_POST['inputString']"','"$_POST['inputStringa']"','"$_POST['inputStringa1']"','"$_POST['inputStringa2']"','"$_POST['inputStringa3']"','"$_POST['inputStringa4']"')" ;
答案 0 :(得分:4)
你的报价不对。单引号和双引号正在混淆。这样做:
mysql_query("insert into docs
values('{$_POST['inputString']}','{$_POST['inputStringa']}',
'{$_POST['inputStringa1']}','{$_POST['inputStringa2']}',
'{$_POST['inputStringa3']}','{$_POST['inputStringa4']}')") ;
另外,请记住通过POST
传递所有mysql_real_escape_string
变量,如下所示:
$_POST['inputString'] = mysql_real_escape_string($_POST['inputString']);
在运行查询之前执行此操作。
答案 1 :(得分:3)
阅读关于字符串的PHP手册条目并学习基本语法,你会发现为什么这段代码不起作用:
答案 2 :(得分:2)
你错过了“。”在查询中
$sql = "INSERT INTO docs VALUES('".$_POST['inputString']."','".$_POST['inputStringa']."','".$_POST['inputStringa1']."','".$_POST['inputStringa2']."','".$_POST['inputStringa3']."','".$_POST['inputStringa4']."')";
或使用
删除漏洞
mysql_query("insert into docs values ( ' { $_POST['inputString'] }' ,'{$_POST['inputStringa']}',' {$_POST['inputStringa1']}','{$_POST['inputStringa2']}',
'{$_POST['inputStringa3']}','{$_POST['inputStringa4']}')") ;
答案 3 :(得分:1)
你使用单引号和双引号,你不能这样做。您需要连接post值,如下所示:
$sql = "INSERT INTO docs VALUES('".$_POST['inputString']."','".$_POST['inputStringa']."','".$_POST['inputStringa1']."','".$_POST['inputStringa2']."','".$_POST['inputStringa3']."','".$_POST['inputStringa4']."')";
mysql_query($sql);