我的查询是这样的:
<?php
$sql = "UPDATE macs_temp SET home_page_heading='$home_page_heading', home_page_sub_heading='$home_page_sub_heading', home_page_description='$home_page_description', about_us_heading='$about_us_heading', about_us_description='$about_us_description', business_description='$business_description', we_do_description='$we_do_description', video_description='$video_description', photography_description='$photography_description', music_description='$music_description', web_and_app_description=REPLACE($web_and_app_description, '\'', '') WHERE id=1";
if ($conn->query($sql) === TRUE) {
// echo "Record updated successfully";
header("Location: index.php");
exit;
} else {
echo "Error updating record(Contact System Admin): " . $conn->error;
echo "Inside else error..!";
}
?>
错误如下: 更新记录时出错(联系系统管理员):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行第 1 行的 ''j, '\'', '') WHERE id=1' 附近使用的正确语法,其他错误..!
注意:我的表单包含 11 个字段,其中任何/多个字段可能包含撇号,因此我想使用所有撇号来更新 mysql 数据库中的所有数据。
最佳答案
尝试一下,您需要将 $web_and_app_description
括在 ''
中,以便将其视为字符串
$sql = "UPDATE macs_temp SET home_page_heading='$home_page_heading',
home_page_sub_heading='$home_page_sub_heading',
home_page_description='$home_page_description',
about_us_heading='$about_us_heading', about_us_description='$about_us_description',
business_description='$business_description',
we_do_description='$we_do_description', video_description='$video_description',
photography_description='$photography_description',
music_description='$music_description',
web_and_app_description=REPLACE('$web_and_app_description', '\'', '') WHERE
id=1";
关于php - 如果我们将查询存储到变量中,MySQL REPLACE 将不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45754073/