现在,当我提交角色时,'我得到下面列出的以下错误,然后当我提交单词时一切正常.我正在使用htmlentities(),我仍然得到这个错误.
如何防止此错误发生是否有一种方法可以允许或转换或停止'显示为错误的字符表单?
这是我得到的错误.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '''')'
Run Code Online (Sandbox Code Playgroud)
您需要转义在SQL查询中发送的字符串.
为此,您可以使用该mysql_real_escape_string功能.
例如,您的代码可能看起来像这样(未经过测试,但这样的事情应该可以解决):
$str = "abcd'efh";
$sql_query = "insert into my_table (my_field) values ('"
. mysql_real_escape_string($str)
. "')";
$result = mysql_query($sql_query);
Run Code Online (Sandbox Code Playgroud)
另一个解决方案(需要更多的工作,因为你将不得不更改更多的代码)将是使用预准备语句; 使用mysqli_*或PDO - 但旧的mysql_*扩展名不可能.
编辑:如果这不起作用,你可以编辑你的问题,给我们更多的信息吗?就像导致错误的代码片段一样?
| 归档时间: |
|
| 查看次数: |
96 次 |
| 最近记录: |