ปัญหาการเข้ารหัสเมื่อทำงานกับ SQL ใน PHP
โดยทั่วไป หากไม่ดำเนินการเพิ่มเติม ข้อความภาษารัสเซียเมื่อดึงข้อมูล จากฐานข้อมูลจะแสดงผลเป็นตัวอักษรที่อ่านไม่ออก หรือเครื่องหมายคำถาม เพื่อหลีกเลี่ยงปัญหาดังกล่าว ควรปฏิบัติตามกฎที่อธิบายไว้ด้านล่าง
กฎข้อที่ 1
ฐานข้อมูลและตารางในนั้นควรอยู่ใน
การเข้ารหัส utf8_general_ci
กฎข้อที่ 2
ไฟล์ PHP เองควรอยู่ในการเข้ารหัส utf8
กฎข้อที่ 3
ที่ส่วนต้นของไฟล์ PHP ควรมีแท็ก HTML ดังต่อไปนี้:
<meta charset="utf-8">
กฎข้อที่ 4
เพื่อความมั่นใจ ให้เพิ่มคำสั่งนี้ทันทีหลังจากคำสั่ง mysqli_connect:
<?php
mysqli_query($link, "SET NAMES 'utf8'");
?>