我的MySQL查询/ php出现问题,我尝试更新我的数据库中通常会有效的行,但是当字符串中有'
时,例如
我不要
'
喜欢绿色的鸡蛋和火腿。
其中的'
将取消整个响应,而不是更新行,所以如果我在没有'
的情况下放置这样的内容,例如:
我不喜欢绿色的鸡蛋和火腿。
该字符串将保存到该行。下面是使用的MySQL查询以及从中获取字符串的位置。
$NewMessage = $_POST['message123'];
mysql_query("UPDATE Account SET `function` = 'Message', `note` = '$NewMessage' WHERE `id` = '$ID' AND `Online` = '1'");
如果您需要更多来源或任何内容,请告诉我,让我知道您的想法,谢谢!
答案 0 :(得分:0)
$NewMessage = mysql_real_escape_string($_POST["message123"]);
但当然,mysql_*
API已经deprecated,我建议您改为使用prepared statement。
答案 1 :(得分:0)
嘿朋友,你需要改变单曲'with''逗号2次。然后它将你的值正确插入表中,其他生成错误。
真正的转义字符串使用我们需要的值就像这个doest。如果我们在数据库中的用户价值就像它不对,那就是使用''2次单逗号没有doule逗号
答案 2 :(得分:0)
简单地使用addslashes()
详细了解click here
例如,您的代码只需使用addslashes()
这样的内容
$NewMessage = addslashes($_POST['message123']);
我希望它对你有用。