如何在 PHP MySQL 中更新数据


how to update data in php mysql?

假设我想在不删除上一条消息的情况下更新消息行。例如:行消息具有当前值"hello",现在我想添加"hi"而不替换单词"hello"。所以结果应该是"你好嗨"。

我已经尝试了下面的代码,但它不起作用:

$text="hi";
$sql = "UPDATE class SET message= message+'$text' WHERE id=2";

$sql = "UPDATE class SET message= 'message'.'$text' WHERE id=2";

对不起,我的英语不太好。 感谢您的帮助

您可以使用MySQL的concat()函数将数据附加到字段中:

$sql = "update class set message = concat(ifnull(message,"")," ".'$text') where id=2";

在附加新内容之前,您可能还需要考虑一个空格!

好吧,首先你应该真正了解SQL注入(以及如何防止它,包括预准备语句)。

您可以使用 CONCAT() 函数在 SQL 中执行此操作:

$sql = "UPDATE class SET message = CONCAT(message, '$text') WHERE id=2";

在mysql查询中尝试CONCAT 。

$text = "hi";
$myQuery = "UPDATE class SET message= CONCAT(message,'".$text."') WHERE id=2";

您应该使用用于连接字符串的 CONCAT 函数。在这里,由于您使用的是 php 变量的内容,因此最好像 '".$text."' 一样从 mysql 查询中转义 php 变量;

看看 MySql 的 CONCAT() 函数:

$sql = "UPDATE class SET message=CONCAT(message, '".$text."') WHERE id=2";

应该做这个伎俩。

你可以试试这个:

$sql = "UPDATE class SET message=CONCAT(message, '$text') WHERE id='2'";

但是,请注意,这容易受到 SQL 注入的影响