我想在PHP MYSQL中添加单引号词,如“Dwi'q”和“Jum'at”, 但我无法添加这个词,我尝试搜索任何东西,但我没有找到它。
我的查询是:
$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());
感谢您的帮助。
答案 0 :(得分:0)
要使用'
插入值,您需要使用mysqli_real_escape_string
或mysql_real_escape_string
。最好在将值插入DB时始终使用以避免SQL注入。
还有一件事请停止使用mysql_*
个功能并开始使用mysqli_*
功能或PDO
示例强>
使用mysql_real_escape_string
$a = "some one's text";
$a = mysql_real_escape_string($a);
使用mysqli_real_escape_string
$con = mysqli_connect("localhost","dbusername","dbpassword","dbname");
$a = "some one's text";
$a = mysqli_real_escape_string($con,$a);
答案 1 :(得分:0)
简单..你可以用反斜杠来逃避..
$search_keyword="jum\'at";
但是我建议你在将值传递给查询之前首先清理它。使用名为
的php函数mysql_real_escape_string($search_keyword)
for ex;
$search_keyword=mysql_real_escape_string("jum'at");
答案 2 :(得分:0)
首先这样做:
$a = mysql_real_escape_string("Dwi'q");
$b = mysql_real_escape_string("Jum'at");
然后运行查询,在查询中提供这些变量。