gpt4 book ai didi

php - 在 PHP 中,如何在插入 MySQL 表之前转义字符串中的单引号?

转载 作者:行者123 更新时间:2023-11-29 06:13:49 25 4
gpt4 key购买 nike

我有很多文本需要使用 PHP 插入到 MySQL 表中。部分文本如下例所示:

Yes, this is 'great'!

要将其填充到 SQL 语句中,我需要转义 '

我正在使用 ereg-replace $text=mb_ereg_replace("'","\\'", $text); 来完成以下工作:

$sql="insert into mytable (msg) values ('".$text."')";

现在我发现还有另一种文本样式,我必须将如下内容保存到 MySQL:

As you can see the \' world\' is a "disc"!

所以我尝试添加更多 mb_ereg_replace,如下所示:

$text=mb_ereg_replace("'","\\'", $text);
$text=mb_ereg_replace("\\","\\\\", $text);

但这不起作用,我只是收到错误消息:PHP警告:mb_ereg_replace():mbregex编译错误:在[...]中转义时结束模式

这是什么原因造成的?我可能犯了一些错误,但找不到它!

感谢您提供的任何帮助。

最佳答案

使用mysql_real_escape_string逃避你的字符串。

$text = mysql_real_escape_string($text);

或者更好的是,使用 PDO 和参数化查询。

关于php - 在 PHP 中,如何在插入 MySQL 表之前转义字符串中的单引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7766773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com