Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Pengkodean karakter Yunani berfungsi dalam HTML tetapi tidak dalam PHP

Meskipun kedengarannya sangat aneh bahwa data mysql Anda dikeluarkan dengan benar di mana string php gagal pada penyandian, cara saya akan mencoba untuk memecahkan masalah Anda, akan memecah masalah menjadi langkah-langkah mencoba mengidentifikasi di mana kesalahan kode ini dihasilkan!

Pertama-tama, Anda harus mencoba mengatur default_charset Anda ke utf-8 dalam file php.ini, yang dilakukan seperti ini :

default_charset = "utf-8";

Jika Anda tidak dapat melakukannya karena batasan penyedia, Anda mungkin masih dapat mengubah nilai saat runtime menggunakan fungsi ini_set fungsi!

Anda juga ingin memastikan bahwa server web diatur untuk mengeluarkan file yang disandikan utf-8 juga! Di Apache ini dapat dilakukan baik di httpd.conf atau menggunakan file htaccess :

AddDefaultCharset UTF-8

Pada titik ini jika semuanya gagal, masih... coba gunakan header php dan rangkaian karakter html relatif :

<?php header("content-type: text/html;charset=utf-8") ?>
<!doctype>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <?php echo "α β γ δ ε ϝ ϛ ζ η θ ι κ λ μ ν ξ ο π ϟ ϙ ρ σ τ υ φ χ ψ ω ϡ" ?>
    </body>
</html>

Ini sangat penting meskipun, bahwa file Anda disimpan menggunakan pengkodean yang sesuai juga (utf-8 hampir selalu merupakan pilihan yang lebih baik, ini membantu untuk mencegah masalah cukup banyak). Jika Anda menyimpan file dengan penyandian yang berbeda dari utf-8, hancurkan file tersebut dan buat file baru dari konten lama. Terkadang editor tidak benar-benar dapat mengganti penyandian dengan benar setelah file dibuat, meskipun notepad++ umumnya bekerja dengan baik untuk itu; cukup gunakan converto to bukan encode in fitur!

Jika masih tidak berfungsi, meskipun saya harap sekarang, Anda dapat memeriksa beberapa alternatif php lain seperti mb_detect_encoding , mb_convert_encoding , htmlentitas dan htmlspecialchars untuk memperbaiki masalah!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Untuk Login GET atau POST?

  2. Permintaan untuk memilih string yang diakhiri dengan karakter tertentu

  3. UPDATE semua nilai kolom yang setara dengan nilai kolom tabel lain berdasarkan idnya

  4. SELECT View berisi subquery dalam klausa FROM

  5. Hitung total berjalan di MySQL