Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 未知列'';价值'';在';字段列表';_Php_Mysql_Phpmyadmin - Fatal编程技术网

Php 未知列'';价值'';在';字段列表';

Php 未知列'';价值'';在';字段列表';,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我对phpmyadmin有一个问题,如下所示: “字段列表”中的未知列“值” 我的代码是: $query=mysql_query("INSERT INTO `pln`(`ppno`,`persno`,`pernum`,`psgrup`,`lv`,`pos`,`nppsimkp`,`persub`,`busrea`,`pdthr`,`gk`,`marstakey`,`bkey`,`bakun`,`numtd`,`email`,`bdate`) VALUES (`'$ppno'`,`'$persno

我对phpmyadmin有一个问题,如下所示:

“字段列表”中的未知列“值”

我的代码是:

$query=mysql_query("INSERT INTO `pln`(`ppno`,`persno`,`pernum`,`psgrup`,`lv`,`pos`,`nppsimkp`,`persub`,`busrea`,`pdthr`,`gk`,`marstakey`,`bkey`,`bakun`,`numtd`,`email`,`bdate`) VALUES (`'$ppno'`,`'$persno'`,`'$pernum'`,`'$psgrup'`,`'$lv'`,`'$pos'`,`'$nppsimkp'`,`'$persub'`,`'$busrea'`,`'$pdthr'`,`'$gk'`,`'$marstakey'`,`'$bkey'`,`'$bakun'`,`'$numtd'`,`'$email'`,`'$bdate'`)") or die(mysql_error());
为什么会发生这种情况,我使用backticks(`),因为我在那里的输入像“o'neil”和“jum'at”。 谢谢。可能是个解决办法。此函数将添加斜杠以转义导致错误的值(字符串),因此,例如,如果
$persno
中的字符串名称中有引号,则只需使用函数转义即可

VALUES ('$ppno','".addlashes($persno)."','$pernum',

我建议停止使用mysql_*deprecated函数,转而使用or或,使用准备好的语句,它可以处理类似的情况,也可以保护您免受

请用这个替换您的查询,您的查询有错误

$query=mysql_query("INSERT INTO `pln`(`ppno`,`persno`,`pernum`,`psgrup`,`lv`,`pos`,`nppsimkp`,`persub`,`busrea`,`pdthr`,`gk`,`marstakey`,`bkey`,`bakun`,`numtd`,`email`,`bdate`) VALUES ('".$ppno."','".$persno."','".$pernum."','".$psgrup."','".$lv."','".$pos."','".$nppsimkp."','".$persub."','".$busrea."','".$pdthr."','".$gk."','".$marstakey."','".$bkey."','".$bakun."','".$numtd."','".$email."','".$bdate."'")") or die(mysql_error());

您不应该同时使用
'
`
`$someVar`
。这没有道理。第二件事是,在将值放入查询之前,应该对其进行转义。那么你就不必担心
在值中签名了。我们只是不再这样做了。