【发布时间】:2016-03-01 03:43:28
【问题描述】:
我将它包含在我的 php 文件的顶部:
<?php
header('Content-Type: text/html; charset=UTF-8');
?>
我这样做是因为我的 file.php 在 html 文件或从我的数据库中查询的数据中没有显示“á、é、í、ó、ú 或 ¿”。
在我放置 'header('Content-Type: text/html; charset=UTF-8');' 之后我的 html 页面开始理解 html 文件中的特殊字符,但是从我的数据库接收到的数据现在有一个带问号的黑色菱形。
我的数据库的排序规则是“utf8_spanish_ci”
在 html 标记处,我尝试将 lang=es 放入,但这从未奏效,我还尝试将元标记放入 head 标记中
<!DOCTYPE html>
<html lang=es>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<head>
我也试过了:
<meta charset="utf-8">
和:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
我不知道问题是什么。当我将数据直接插入数据库时,特殊字符就在那里,但是当我从我的 file.php 插入它们时,它们会出现随机字符。
有人知道为什么会这样吗?
【问题讨论】:
-
字符在你的数据库中显示是否正确;可能一开始就写错了。
-
它们已正确插入数据库中,当我阅读它们时,它们看起来就像我放置它们一样