无法在 PHP 脚本中包含 HTML 链接,但可以作为 MySQL 查询正常工作

无法在 PHP 脚本中包含 HTML 链接,但可以作为 MySQL 查询正常工作

我使用以下内容作为 PHP 脚本的一部分:

mysqli_query($con,"UPDATE table
SET description='<a href="http://123456.biz/index.php/123/321/456/*/789">text</a>' 
WHERE description IS null;");

该查询在 MySQL 上运行良好,但将其作为 PHP 脚本的一部分运行时出现以下错误:

PHP 解析错误:语法错误,意外的“href”(T_STRING)

我需要改变什么?

答案1

没有安装 PHP,无法测试是否正常工作,请尝试以下操作:

   mysqli_query($con,"UPDATE table
    SET description='<a href=\"http://123456.biz/index.php/123/321/456/*/789\">text</a>' 
    WHERE description IS null;");

答案2

问题出在你的引号上。你"在字符串中使用了两次双引号 ( ),解析器感到困惑。尝试改用反斜杠 ( \) 来转义它们:

mysqli_query($con,"UPDATE table
    SET description='<a href=\"http://123456.biz/index.php/123/321/456/*/789\">text</a>' 
    WHERE description IS null;");

答案3

问题

您设置的值有双引号。您需要使用反斜杠 \ 来转义这些引号

这告诉脚本使用字符作为值的一部分而不是脚本本身的一部分。

解决方案

您的编码中只是一个简单的错误,请尝试......

mysqli_query($con,"UPDATE table SET description='<a href=\"http://123456.biz index.php/123/321/456/*/789\">text</a>' WHERE description IS null;");

进一步阅读

PHP 添加斜杠

PHP 转义序列

PHP 转义特殊字符

相关内容