我从数据库中获取了一些信息,例如大量文本,但是在使用 PHP 回显时,字符正在被更改。我如何让它显示正常的东西?谢谢。
//makes database connection and queries the db
$row = mysqli_fetch_array($result);
echo $row['text'];
� inside has a question mark
\ before every apostrophe
and it\\\'s
和更多...
首先,过度的斜线。这通常是由于过度转义引起的magic_quotes
,建议将其关闭并用于mysql_real_escape_string
进入数据库的数据。不过,在关闭它之前,请确保数据已正确转义,因为这可能会在您的站点中引入 sql 注入漏洞。
至于怪异的性格。您的数据库和网站字符集需要匹配。确保您的网站字符集设置为 utf-8,使用元标记或header
设置。
这对 . 来说是一个艰难的改变magic_quotes
,但一旦完成,您就不必担心stripslashes
再次使用您的数据。因为你不应该stripslashes
对来自数据库的数据进行处理,如果它首先被正确转义。