Pengekodan halaman HTML. Pengekodan HTML. Pengekodan apa untuk menyimpan halaman web?

Saya telah menghabiskan beberapa jam terakhir di tapak web saya untuk menguji HTML 4.01 Strict dan saya sebenarnya telah berjaya dengannya, tetapi ada satu lagi amaran yang saya tidak dapat menyingkirkannya. Amaran:

Pengekodan aksara tidak sepadan!

Pengekodan aksara yang dinyatakan dalam pengepala HTTP (iso-8859-1) adalah berbeza daripada nilai dalam elemen (utf-8). Saya akan menggunakan nilai daripada pengepala HTTP (iso-8859-1) untuk pengesahan ini.

Untuk maklumat umum tentang cara menukar pengepala set aksara dalam susunan rangkaian yang berbeza, lihat http://www.w3.org/International/O-HTTP-charset


2018-05-25 13:30

Pelayan menandakan dokumen dengan jelas sebagai ISO-8859-1 dalam pengepala HTTP. Cuba simpan default.html menggunakan pengekodan UTF-8 menggunakan editor yang sesuai.


2018-05-25 03:07

Okay, saya datang dengan penyelesaian separa untuk masalah saya. Memandangkan ia hanya fail default.html yang menyebabkan amaran, saya menganggap bahawa pelayan melakukan sesuatu yang istimewa kepadanya kerana namanya. Jadi saya mencipta fail home.html baharu dengan kandungan yang sama seperti fail default.html dan menghalakan fail .htaccess ke fail baharu (lihat baris 3 di bawah).

# Gunakan PHP5 sebagai aplikasi AddHandler lalai/x-httpd-php5 .php DirectoryIndex home.html AddDefaultCharset UTF-8

Ini membetulkan masalah dan semua fail kini diiktiraf sebagai UTF-8. Saya masih tidak pasti apa yang pelayan lakukan dengan fail default.html atau tempat tetapan berkenaan perkara ini, tetapi apabila masalah saya hilang, saya akan melupakannya.

Salah satu masalah paling biasa yang dihadapi oleh seorang pemula Juruweb(dan bukan hanya pemula), ini masalah dengan pengekodan di tapak. Malah bagi saya ia sentiasa muncul semasa membuat tapak web " abracadabra"Tetapi, mujurlah, saya tahu betul bagaimana untuk menyelesaikan masalah ini, jadi saya menyusun segala-galanya dalam beberapa saat. Dan dalam artikel ini saya akan cuba mengajar anda dengan cepat menyelesaikan masalah yang berkaitan dengan pengekodan di tapak.

Perkara pertama yang perlu diperhatikan ialah semua masalah dengan penampilan "abracadabra" dikaitkan dengan ketidakpadanan antara pengekodan dokumen dan pengekodan yang ditetapkan oleh penyemak imbas. Katakan dokumen masuk windows-1251, tetapi atas sebab tertentu pelayar memaparkan UTF-8. Dan punca percanggahan sedemikian mungkin sebab berikut.

Sebab pertama

Tag meta ditulis dengan salah jenis kandungan. Berhati-hati, ia harus sentiasa mengandungi pengekodan di mana dokumen anda ditulis.

Sebab kedua

Nampaknya tag meta ditulis mengikut cara yang anda mahukan, dan penyemak imbas memaparkan dengan tepat apa yang anda mahukan, tetapi atas sebab tertentu masih terdapat masalah dengan pengekodan. Penyebabnya di sini hampir pasti bahawa dokumen itu sendiri mempunyai pengekodan yang berbeza. Jika anda bekerja di Notepad++, kemudian di bahagian bawah sebelah kanan terdapat nama pengekodan dokumen semasa (contohnya, ANSI). Jika anda meletakkan tag meta UTF-8, dan dokumen itu sendiri ditulis dalam ANSI, kemudian lakukan penukaran kepada UTF-8(melalui menu " Pengekodan"dan titik" Tukar kepada UTF-8 tanpa BOM").

Sebab ketiga

Sebab keempat

Dan akhirnya, sebab popular terakhir ialah masalah dengan pengekodan dalam pangkalan data. Mula-mula, pastikan semua jadual dan medan anda ditulis dalam pengekodan yang sama, yang sepadan dengan pengekodan tapak yang lain. Jika ini tidak membantu, maka selepas menyambung dalam skrip, jalankan permintaan berikut:

TETAPKAN NAMA "utf8"

bukannya " utf8" mungkin ada pengekodan yang berbeza. Selepas itu, semua data dari pangkalan data harus keluar dalam pengekodan yang betul.

Dalam artikel ini, saya harap saya telah menjelaskan, sekurang-kurangnya, 90% masalah yang berkaitan dengan penampilan "omong kosong" di laman web. Kini anda perlu menangani masalah yang popular dan mudah seperti pengekodan yang salah dalam masa yang singkat.

Selalunya, blogger pemula, dan bukan sahaja pemula, berhadapan dengan masalah pengekodan halaman html. Apabila, bukannya teks dan aksara yang boleh dibaca, CRACKS yang tidak dapat difahami dipaparkan. Ini adalah nama yang diberikan kepada simbol yang tidak sepadan dengan yang sepatutnya dipaparkan pada halaman. Dari mana datangnya hieroglif yang tidak dapat difahami?

Untuk memahami perkara ini, anda perlu memahami apa itu pengekodan halaman html. Sebarang teks pada komputer diwakili sebagai satu set bait. Dalam setiap bait ini, hanya satu aksara tunggal dikodkan dengan kod tertentu. Untuk mentafsir atau menyahkod set bait dengan betul dan membentangkannya dalam bentuk yang boleh dibaca manusia, penyemak imbas perlu memadankan salah satu jadual kod.

Pengekodan asas ialah pengekodan ASCII, yang mengandungi kod untuk 128 aksara abjad Latin dan aksara khas (kurung, kekisi, dll.). Kemudian pengekodan aksara Rusia pertama CP866 dan KOI8-R muncul, dan daripadanya muncul pengekodan windows-1251 yang diketahui oleh juruweb hari ini. Walaupun semua pengekodan ini direka untuk memaparkan teks Rusia, semuanya berbeza dalam kod antara satu sama lain.

Jika teks itu ditulis dalam pengekodan CP866, dan penyemak imbas cuba menyahkodnya menggunakan jadual kod windows-1251, maka akibatnya kita akan mendapat perkataan yang tidak boleh dibaca. Sebagai tambahan kepada nama pengekodan yang saya berikan di sini, terdapat juga banyak petikan yang hebat. Dengan jadual kod yang begitu banyak, masalah keserasian pengekodan telah timbul. Persoalan untuk mencipta pengekodan sejagat telah menjadi sangat mendesak. Hari ini, pengekodan universal utf-8 telah dicipta. Apabila memprogramkan tapak web, terdapat empat perkara yang memerlukan pematuhan dengan standard pengekodan teks tunggal.

  • Pengekodan skrip.
  • Pengekodan jadual MySQL.
  • Pengekodan halaman HTML itu sendiri.
  • Tempat yang digunakan oleh penyemak imbas pengguna.

Dalam semua komponen tapak ini, pengekodan tunggal harus digunakan - sebaiknya utf-8, kerana ia adalah universal. Jika anda menekan kombinasi kekunci CTRL+ U, anda boleh melihat kod halaman, yang menunjukkan pengekodan yang digunakan untuk dokumen ini.

Jika anda membuka blog anda dan melihat beberapa aksara pelik dan bukannya aksara Rusia, ini bermakna pengekodan ditetapkan dengan tidak betul.

Bagaimana untuk menukar pengekodan?

Untuk menghapuskan ralat dan masalah dengan pengekodan blog anda, kami menggunakan klien FTP. Dengan bantuannya, salin fail wp-config.php ke “Desktop” komputer anda dan bukanya menggunakan editor teks Notepad++. Fail ini mengandungi maklumat tentang blog anda - termasuk kata laluan, pengekodan pangkalan data dan banyak lagi. Mari lihat jika pengekodan adalah yang lain, ia perlu ditukar kepada UTF-8.

  • -simpan dalam pengekodan ini.
  • -di dalam kod Pangkalan Data, tukar pengekodan kepada UTF-8.

Kami menyimpan fail dalam editor Notepad++, dalam nilai "UTF-8 tanpa tandatangan BOM" dan memuat naik fail ke pengehosan kami, iaitu, kami menukar fail wp-config.php lama pada pengehosan , pada baharu.

Sebagai peraturan, tindakan ini sudah cukup untuk semuanya dipaparkan dengan betul di blog anda. Jika selepas langkah di atas tiada apa yang berhasil, anda boleh mencuba cara lain untuk menukar pengekodan. Untuk melakukan ini, anda perlu membuat perubahan pada fail .htaccess. Untuk membetulkan ini, buka fail .htaccess menggunakan editor Notepad++ dan tambahkan salah satu baris ini pada permulaan:

  • AddDefaultCharset UTF-8
  • CharsetDisable On
  • CharsetDefault UTF-8
  • CharsetSourceEnc UTF-8

Mungkin cukup untuk menukar salah satu pilihan; kadangkala yang pertama sudah cukup. Jika ia tidak berjaya, kami melalui pilihan berikut secara manual, memasukkan pilihan berikut satu demi satu. Jangan lupa urutan tindakan:

  1. Buka fail dalam editor.
  2. Kami sedang membuat perubahan.
  3. Jimat.
  4. Muat naik ke hosting.
  5. Jom semak.

Saya juga ingin menyebut salah satu masalah yang boleh timbul dan yang saya hadapi semasa membuat halaman tangkapan. Apabila memuat naik fail halaman tangkapan ke pengehosan, situasi ketidakpadanan pengekodan juga mungkin timbul. Dalam kes ini, anda perlu membetulkan fail index.html. Untuk melakukan ini, menggunakan FaleZilla, ekstrak fail dan pindahkannya ke "Desktop" komputer anda. Seterusnya, buka fail menggunakan Notepad biasa.

Selepas fail dibuka dalam Notepad, klik kiri pada “Fail” dan “Simpan sebagai...”.

15.03.2016

Belum lagi


Hai semua!
Mari sambung belajar asas HTML. Dalam pelajaran ini kita akan melihat bagaimana untuk menentukan pengekodan HTML untuk tapak (halaman web).
Pelajaran ini sangat penting kerana tidak mengetahui cara menentukan pengekodan untuk halaman web boleh menyebabkan halaman anda tidak boleh dibaca. Anda bertanya: "Bagaimana mungkin mereka tidak boleh?"
Biar saya tunjukkan rupa blog saya dengan pengekodan yang salah:

Jadi, Pengekodan HTML– ini adalah jadual surat-menyurat antara kod dan simbol abjad. Iaitu, komputer pengekodan kami akan menukar kod menjadi huruf yang jelas dan boleh dibaca.

Untuk memberitahu penyemak imbas tentang pengekodan aksara pada halaman web, anda perlu menulis antara teg Berikut ialah teg meta:

Sila ambil perhatian bahawa kod itu mengandungi perkataan "nama pengekodan". Di sini anda perlu menentukan pengekodan HTML.
Ini biasanya utf-8 atau windows-1251.

Pengekodan untukutf-8:

PengekodanUntuk windows-1251:

Jika anda terlupa memberitahu penyemak imbas tentang pengekodan tapak atau halaman web, penyemak imbas akan cuba menentukan pengekodan secara automatik, tetapi ia tidak selalu berjaya dengan betul. Akhirnya, hasilnya akan sama seperti yang saya tunjukkan dalam gambar di atas.

Mari kita teruskan untuk berlatih.

Cara membuat dokumen HTML dengan
pengekodan utf-8

“Semua Program” => “Aksesori” => “Pad Nota” :

<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p> <head></head> Ini adalah tag meta:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </p><p> <html> <head> <title>Halaman HTML pertama saya di StepkinBlog..<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Klik dalam notepad <span>“Fail” => “Simpan sebagai...”</span>:</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2016/03/kak-ukazat-kodirovku-sajta-na-html-osnovy-html-dlya-nachinayushhix-urok-20-3.png' width="100%" loading=lazy loading=lazy></p><p><br>Di mana item "Pengekodan:" dinyatakan "UTF-8". <br>Klik "Simpan":</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2016/03/kak-ukazat-kodirovku-sajta-na-html-osnovy-html-dlya-nachinayushhix-urok-20-4.png' width="100%" loading=lazy loading=lazy></p><p>Besarkan imej?</p> <h3><span>Cara membuat dokumen HTML dengan pengekodan windows-1251</span></h3> <p>Buka pad nota standard. <span><i>“Semua Program” => “Aksesori” => “Pad Nota”</i> </span>.<br>Seterusnya, tampal kod HTML standard ke Notepad:</p><p> <html> <head> <title>Halaman HTML pertama saya di StepkinBlog..<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Sekarang kami menunjukkan dalam pengekodan halaman web yang disimpan. Untuk melakukan ini, letakkan di antara tag <head></head> Ini adalah tag meta:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> </p><p>Inilah yang sepatutnya kelihatan (baris #4):</p><p> <html> <head> <title>Halaman HTML pertama saya di StepkinBlog..<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Klik dalam notepad <span>“Fail” => “Simpan sebagai...”</span>:</p> <p><img src='https://i1.wp.com/stepkinblog.ru/wp-content/uploads/2016/03/kak-ukazat-kodirovku-sajta-na-html-osnovy-html-dlya-nachinayushhix-urok-20-5.png' width="100%" loading=lazy loading=lazy></p> <p>Di mana item "Nama fail", tulis nama halaman web dalam bahasa Latin dan dengan sambungan ".html". Saya fikir anda masih ingat ini dari pelajaran pertama anda. <br>Di mana item "Pengekodan:" ditentukan, nyatakan "ANSI". <br>Klik "Simpan":</p> <p><img src='https://i1.wp.com/stepkinblog.ru/wp-content/uploads/2016/03/kak-ukazat-kodirovku-sajta-na-html-osnovy-html-dlya-nachinayushhix-urok-20-6.png' width="100%" loading=lazy loading=lazy></p> <p>Itu sahaja!</p> <p>Kebanyakan juruweb memilih pengekodan UTF-8. Saya tidak akan memberitahu anda sebabnya, kerana saya takut membebankan anda dengan maklumat yang belum diperlukan pada peringkat pengetahuan HTML anda.</p> <p>Sebagai contoh, dalam notepad, tetapkan kod:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </p><p>Dan nyatakan "ANSI" semasa menyimpan:</p> <p><img src='https://i1.wp.com/stepkinblog.ru/wp-content/uploads/2016/03/kak-ukazat-kodirovku-sajta-na-html-osnovy-html-dlya-nachinayushhix-urok-20-6.png' width="100%" loading=lazy loading=lazy></p> <p>Oleh kerana ini tidak betul, hasilnya akan seperti ini:</p> <p>Simpan halaman web anda dengan betul untuk mengelakkan hasil seperti ini</p> <p>Catatan sebelum ini <br></span> <span>Entri seterusnya <br></p> <p>Jika pengekodan tidak betul, keseluruhan tapak atau sebahagian daripadanya dipaparkan sebagai "kryapozyablov", i.e. aksara pelik menjadikan teks tidak boleh dibaca. Keadaan ini boleh berlaku jika pengekodan pelayan web dikonfigurasikan secara tidak betul atau jika tiada tetapan. Mari kita pertimbangkan pilihan dan cara yang mungkin untuk menyelesaikan masalah</p> <h2>Pengekodan halaman HTML yang salah <br></h2> <p>Mari buat fail ujian:</p><p>Sudo gedit /var/www/html/encoding.html</p><p>Mari kita salin ke dalamnya:</p><p> <html> <head> <title>Pemeriksaan pengekodan



Mari buka fail ini dalam penyemak imbas

Seperti yang anda lihat, pengekodan dikesan secara tidak betul oleh penyemak imbas:

Terdapat beberapa cara untuk membetulkan keadaan ini. Mari kita mulakan dengan perkara yang paling mudah - nyatakan pengekodan untuk halaman web dengan jelas. Ini dilakukan oleh teg meta, yang mesti terletak di dalam teg kepala:

Mari tambahkan baris ini pada fail ujian kami supaya kelihatan seperti ini:

Pemeriksaan pengekodan

Uji fail untuk menyemak pengekodan



Seperti yang dapat kita lihat dalam tangkapan skrin berikut, masalah itu diselesaikan:

Jika pengekodan fail anda berbeza daripada UTF-8, kemudian gantikannya dengan windows-1251 atau yang sepadan dengan pengekodan halaman web. Untuk mengetahui cara mengesan pengekodan fail, sila lihat.

Ini adalah cara paling mudah untuk menyelesaikan masalah pengekodan - tanpa mengubah tetapan pelayan.

Mari kembalikan fail ujian kami kepada keadaan asalnya dan teruskan mengkaji cara untuk menentukan pengekodan.

Jika fail .htaccess didayakan oleh tetapan Apache, fail ini boleh digunakan untuk menentukan pengekodan halaman yang dihantar oleh pelayan web. Untuk mendayakan sokongan fail .htaccess dalam fail konfigurasi Apache ( /etc/apache2/apache2.conf) cari sekumpulan garisan

Indeks Pilihan FollowSymLinks AllowOverride Tiada Memerlukan semua diberikan

Dan menggantikannya

AllowOverride Tiada

AllowOverride Semua

Selepas ini, pelayan perlu dimulakan semula.

Sudo systemctl mulakan semula apache2.service

Fail .htaccess mesti diletakkan dalam direktori yang sama dengan tapak. Tapak saya dihoskan dalam direktori akar pelayan web. Jika anda mempunyai yang sama, maka sekarang dalam folder /var/www/html/ buat fail .htaccess dan tambah arahan kepadanya AddDefaultCharset selepas itu menunjukkan pengekodan yang dikehendaki. Contoh

AddDefaultCharset UTF-8

AddDefaultCharset windows-1251

Anda boleh menentukan pengekodan yang akan digunakan hanya pada fail dalam format tertentu:

AddCharset utf-8 .atom .css .js .json .rss .vtt .xml

Set fail boleh menjadi apa-apa sahaja, contohnya:

AddCharset utf-8 .html .css .php .txt .js

Pilihan seterusnya ialah alternatif dan juga membolehkan anda menetapkan pengekodan untuk fail jenis tertentu; ia memerlukan ia didayakan mod_headers:

Pengepala set Content-Type "text/html; charset=utf-8"

Pilihan lain yang juga boleh digunakan dalam fail .htaccess untuk menetapkan pengekodan UTF-8:

IndexOptions +Charset=UTF-8

Jika tapak dalam PHP, maka anda mungkin perlu menduplikasi pengekodan dengan php_value default_charset:

AddDefaultCharset windows-1251 php_value default_charset "cp1251"

Daripada mencipta fail .htaccess, anda boleh menetapkan pengekodan dalam fail konfigurasi pelayan web. Untuk Apache CentOS/Fedora ini ialah fail httpd.conf, dan pada Debian/Ubuntu ini ialah fail apache2.conf. Tambahkan baris berikut untuk menetapkan pengekodan dan mulakan semula pelayan web untuk perubahan berkuat kuasa:

AddDefaultCharset UTF-8

Bagaimana untuk menetapkan pengekodan UTF-8 dalam PHP

Dalam skrip PHP, pengekodan ditetapkan kepada kepala, Sebagai contoh:

Header("Content-Type: charset=utf-8");

Biasanya, bersama dengan pengekodan, jenis kandungan juga ditunjukkan (dalam contoh, pilihan untuk halaman HTML):

Header("Content-Type: text/html; charset=utf-8");

Pilihan lain untuk suapan RSS:

Header("Content-type: text/xml; charset=utf-8");

Ingat bahawa fungsi kepala mesti dipanggil sebelum sebarang output ke penyemak imbas. Jika tidak (jika output ke penyemak imbas telah dibuat), maka pengepala telah pun dihantar. Jelas sekali, dalam kes ini tidak mungkin untuk mengubahnya lagi. Jika mesej ralat telah dikeluarkan kepada penyemak imbas, maka pengepala telah pun dihantar dan menggunakan pengepala akan menyebabkan ralat. Untuk menyemak sama ada pengepala telah dihantar, gunakan headers_sent.

Kaedah yang diterangkan hanya berfungsi apabila skrip PHP menjana kandungan halaman sepenuhnya. Anda harus menyimpan halaman statik (seperti html) dalam pengekodan utf-8. Kebanyakan pelayan web akan mengambil perhatian tentang pengekodan fail dan menambah pengepala dengan sewajarnya. Malah, menyimpan fail PHP dalam pengekodan utf-8 akan membawa kepada hasil yang sama.

Pengekodan hasil yang salah daripada pangkalan data MySQL

Jika tapak anda terdiri daripada bahagian statik (templat) dan bahagian dinamik, yang terbentuk daripada data yang diterima daripada pangkalan data, maka situasi mungkin timbul apabila sebahagian daripada tapak mempunyai pengekodan yang betul, dan bahagian tapak yang lain mempunyai pengekodan yang salah satu. Dalam kes ini, adalah sia-sia untuk menukar tetapan pelayan web - kerana semuanya sama, sebahagian daripada halaman akan mempunyai pengekodan yang salah.

Anda perlu bermula dengan menentukan pengekodan jadual anda. Boleh tengok phpMyAdmin:

Perhatikan lajur " Perbandingan", kemasukan " utf8_unicode_ci" bermakna pengekodan digunakan UTF-8.

Anda boleh menyambung ke DBMS MySQL dan menyemak pengekodan jadual tanpa phpMyAdmin. Untuk ini:

Mysql -u root -p

Jika anda terlupa nama pangkalan data, kemudian jalankan arahan:

TUNJUKKAN PANGKALAN DATA;

Katakan saya ingin mencari pengekodan untuk jadual dalam pangkalan data information_schema

GUNAKAN maklumat_skema;

Jika anda terlupa nama jadual, jalankan:

TUNJUKKAN LAjur PENUH DARI nama_jadual;

Sebagai contoh:

TUNJUKKAN LAjur PENUH DARI GLOBAL_STATUS;

Anda akan melihat sesuatu seperti ini:

Lihat lajur Pengumpulan. Dalam kes saya di sana utf8_general_ci, ia seperti utf8_unicode_ci, pengekodan UTF-8. Ngomong-ngomong, jika anda tidak tahu apa perbezaan antara pengekodan utf8_general_ci, utf8_unicode_ci, utf8mb4_general_ci, utf8mb4_unicode_ci, dan juga pengekodan yang perlu dipilih untuk pangkalan data MySQL, kemudian lihat.

Sekarang setelah kita mengetahui pengekodan (dalam kes saya ia adalah UTF-8), setiap kali anda menyambung ke DBMS MySQL anda perlu melaksanakan pertanyaan secara berurutan:

SET NAMA UTF8 SET WATAK SET UTF8 SET aksara_set_pelanggan = UTF8 SET aksara_set_sambungan = UTF8 SET aksara_set_hasil = UTF8

Dalam PHP ini boleh dilakukan seperti ini:

$this->mysqli = mysqli baharu($server, $username, $password, $basename); jika ($this->mysqli->connect_error) ( $this->errorHandler_c->logError(1, "Connect Error (" . $this->mysqli->connect_errno . ") " . $this->mysqli->connect_error , $_SERVER ["REQUEST_URI"]); ) $this->mysqli->query("SET NAMA UTF8"); $this->mysqli->query("SET CHARACTER SET UTF8"); $this->mysqli->query("SET character_set_client = UTF8"); $this->mysqli->query("SET character_set_connection = UTF8"); $this->mysqli->query("SET character_set_results = UTF8");

ambil perhatian bahawa UTF8 anda perlu menggantikannya dengan pengekodan yang digunakan untuk jadual anda.

Menukar pengekodan fail

Jika anda memutuskan untuk pergi ke arah lain dan bukannya memasang pengekodan baharu, tukar pengekodan fail anda, kemudian lihat artikel "". Ia memberitahu anda cara untuk mengetahui pengekodan semasa fail dan cara menukar fail kepada sebarang pengekodan (bukan hanya UTF-8).

Bagaimana untuk mengetahui pengekodan yang dihantar oleh pelayan

Jika anda ingin mengetahui tetapan pengekodan yang ada pada pelayan web (pengekodan apa yang dihantar dalam pengepala), kemudian gunakan arahan berikut:

Curl URL -s -o /dev/null -D /dev/stdout | grep -E "charset"

Di dalamnya sebaliknya URL masukkan alamat sebenar tapak yang anda semak. Jika tapak menggunakan HTTPS, kemudian nyatakan alamat tapak bersama-sama dengan protokol, sebagai contoh

Curl https://softocracy.ru -s -o /dev/null -D /dev/stdout | grep -E "charset"

Pengekodan yang mana untuk dipilih untuk tapak web