数据库连接 - 双引号 PHP 之间的一个单引号


Database connect-one single quote between double quote php

$data = "INSERT into detail(id,event) VALUES (1,"quest '15")";

我在使用单引号'15时遇到问题,.i 试图使用''15但似乎不起作用。

试试这个:

$data = "INSERT into detail(id,event) VALUES (1,'"quest '15''")";

试试这个:$data = "插入详细(id,事件)值 (1,'任务 '''15')";

问题不在于单引号;问题在于在用双引号括起来的字符串文本中使用双引号。您的双引号字符串文字实际上是在 quest 之前结束的。

一种替代方法是对 SQL 文本中的字符串文本使用单引号。在字符串文本中,您需要"转义"单引号,一种方法是在单引号前面加上另一个单引号。

例如:

$data = "INSERT into detail(id,event) VALUES (1,'quest ''15')";
                                                ^      ^^  ^

如果这样做,event列的值将被视为quest '15

我强烈建议使用预准备语句,但代替它,您可以使用mysqli_real_escape_string。

$data "INSERT INTO detail (id, event) VALUES (1, '".mysqli_real_escape_string("quest '15")."')";