[英]Display HTML friendly special characters with PHP from a MySQL db
我来自墨西哥,所以我们的字符串包含一些需要存储和稍后显示的特殊字符。 有没有办法(使用 PHP)从 MySQL 编码字符串并在 html 中使用它?
<?php
function especialidades($dbcesp){
$q="SELECT NombreEspecialidad FROM especialidad;";
$r=mysqli_query($dbcesp, $q);
while ($esp=mysqli_fetch_assoc($r)) {
?>
<button type="button" class="btn btn-default"><?php echo $esp['NombreEspecialidad']; ?></button>
<?php
}
}
?>
这是我为我的网页检索和生成一些按钮的方式,但由于某种原因,无法正确显示。
首先转到您的phpmyadmin
然后将Server connection collation
utf8mb4_general_ci
设置为utf8mb4_general_ci
然后选择你的database name
然后按你的table
,然后按上structure
,你会看到你的表里面去的所有列,并使用类型更改所有列varchar
或text
然后再按下change
改变了collation
,以utf8_general_ci
然后保存然后再尝试输入另一进入你的数据库,现在很清楚,没有任何模糊的词
以及代码类型的顶部
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
以及 php 代码顶部的那些行来定义 utf 字符集
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
header("Content-Type: text/html; charset=UTF-8");
您应该配置数据库以使用 UTF-8。 也不要忘记将 html 上的编码设置为 UTF-8。
另外,请检查以下链接: MySql spanish character data
我不得不将数据库排序规则更改为 utf8_spanish_ci(在 PHPMyAdmin 中创建数据库期间)。
另外,我必须将字符集元标记添加到 html 文档中:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
最后,我使用了 PHP 编码 api,使用如下:
<?php
function especialidades($dbcesp){
$q="SELECT * FROM especialidad;";
$r=mysqli_query($dbcesp, $q);
while ($esp=mysqli_fetch_assoc($r)) {
?>
<a href="?page=6&esp=<?php echo $esp['CveEspecialidad']; ?>">
<button type="button" class="btn btn-default" value="<?php echo $esp['CveEspecialidad']; ?>">
<?php
echo utf8_encode($esp['NombreEspecialidad']);
?>
</button>
</a>
<?php
}
}
?>
这对我有用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.