Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memastikan Paparan Watak Khas yang Betul dalam PHP dan MySQL?

Bagaimana untuk Memastikan Paparan Watak Khas yang Betul dalam PHP dan MySQL?

Susan Sarandon
Lepaskan: 2024-12-09 20:15:11
asal
149 orang telah melayarinya

How to Ensure Correct Display of Special Characters in PHP and MySQL?

Watak Khas dalam PHP dan MySQL

Apabila berurusan dengan aksara khas dalam PHP dan MySQL, aksara yang tidak dijangka boleh timbul apabila memaparkan data dalam penyemak imbas. Untuk menangani isu ini, kami akan meneroka penyelesaian umum.

Menurut maklumat yang diberikan, HTML ditetapkan dengan betul dengan charset UTF-8 dan jadual serta pangkalan data MySQL menggunakan UTF-8_spanish. Walau bagaimanapun, watak itu diwakili sebagai "?" dengan segi empat sama masih berterusan.

Kunci untuk menyelesaikan masalah ini terletak pada komunikasi antara aplikasi klien (skrip PHP) dan MySQL. MySQL perlu memahami set aksara mana yang pelanggan jangkakan untuk menerima data.

Untuk menyampaikan perkara ini kepada MySQL, arahan SET NAMES 'utf8' hendaklah dilaksanakan sebagai pertanyaan pertama apabila membuat sambungan. Ini memastikan bahawa semua data rentetan ditranskodkan daripada set aksara dalaman ke dalam UTF-8, pengekodan yang digunakan oleh pelanggan.

Untuk skrip PHP menggunakan PDO, ini boleh dicapai melalui kaedah setAttribute:

$db = new PDO($dsn, $user, $password);
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
Salin selepas log masuk

Sebagai alternatif, untuk skrip PHP menggunakan mysqli, kaedah set_charset boleh digunakan:

$mysqli = new mysqli("localhost", "user", "password", "db");
$mysqli->set_charset("utf8");
Salin selepas log masuk

Dengan melaksanakan penyelesaian ini, aksara Sepanyol khas boleh dimasukkan dengan betul ke dalam pangkalan data daripada borang PHP dan dipaparkan dalam penyemak imbas tanpa sebarang aksara yang bercelaru.

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Paparan Watak Khas yang Betul dalam PHP dan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan