簡體   English   中英

使用 MySQL 數據庫中的 PHP 顯示 HTML 友好的特殊字符

[英]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 ,你會看到你的表里面去的所有列,並使用類型更改所有列varchartext然后再按下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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM