Joe*_*ani 16 php mysql database insert special-characters
谁能告诉我如何在MySQL数据库中插入特殊字符?我已经制作了一个PHP脚本,用于将一些单词插入到数据库中,但如果单词包含'那么它就不会被插入.
我可以在使用PHPmyAdmin时插入特殊字符,但是当它通过PHP插入时它不起作用.可能是PHP正在将特殊字符更改为其他内容吗?如果是这样,有没有办法让它们正确插入?
Ant*_*ony 28
$insert_data = mysql_real_escape_string($input_data);
Run Code Online (Sandbox Code Playgroud)
假设您将数据存储为 $input_data
您最有可能转义SQL字符串,类似于:
SELECT * FROM `table` WHERE `column` = 'Here's a syntax error!'
Run Code Online (Sandbox Code Playgroud)
您需要转义引号,如下所示:
SELECT * FROM `table` WHERE `column` = 'Here\'s a syntax error!'
Run Code Online (Sandbox Code Playgroud)
mysql_real_escape_string() 为你处理这个.
您可以将它们直接粘贴到查询中.你应该使用appriopriate函数" mysql_real_escape_string,mysqli_real_escape_string或PDO :: quote "来"逃避"它们,具体取决于你使用的扩展名.