如何从数据库中回显返回和撇号?

时间:2016-06-30 00:57:03

标签: php mysql database

我有一个简单的数据库,我有旅行的旅行描述。在数据库中,行程描述包括撇号和输入/返回,它是类型:文本。

我想检索并回显所有的旅行描述(有很多)到网站上,但撇号,连字符和其他特殊字符变成 而输入/返回不是那里。

例如,数据库中的以下文本:

  

我们将抵达新格鲁吉亚,在世界上最大的咸水泻湖周围划桨7天。

     

我们将回归......

在网页上显示为

  

我们将抵达新格鲁吉亚,在着名的Marovo Lagoon周围划桨,这是世界上最大的咸水泻湖 七天。我们将回到......

“我们将回归......”不是一个新的段落,撇号和两个连字符是

这是我的php代码:

$tripResult = mysql_query("SELECT * FROM trips");
while($row = mysql_fetch_array($tripResult)){
    echo $row['tripDescription'];
}

我尝试用

替换回声线
echo htmlspecialchars($row['tripDescription'], ENT_QUOTES);

但这根本不显示任何文字。

编辑:我还尝试检查我是否有charset元标记,将数据库排序规则更改为utf8mb4_general_ci(最接近utf8mb4,我可以在下拉列表中找到),并替换回声用:

echo mysql_set_charset($row["tripDescription"]);

但是它仍然没有显示任何文字。如何让这个文字看起来正常?

1 个答案:

答案 0 :(得分:0)

使用addslashes — Quote string with slashes插入您的数据并使用stripslashes

$tripResult = mysql_query("SELECT * FROM trips");
while($row = mysql_fetch_array($tripResult)){
    echo stripslashes($row['tripDescription']);
}

使用stripslashes — Un-quotes a quoted string