ترميز صفحة HTML. ترميز HTML. ما هو الترميز لحفظ صفحة الويب؟

لقد أمضيت الساعات القليلة الماضية على موقع الويب الخاص بي في اختبار HTML 4.01 Strict وقد نجحت بالفعل في استخدامه، ولكن هناك تحذير آخر لا أستطيع التخلص منه. تحذير:

عدم تطابق ترميز الأحرف!

يختلف ترميز الأحرف المحدد في رأس HTTP (iso-8859-1) عن القيمة الموجودة في العنصر (utf-8). سأستخدم القيمة من رأس HTTP (iso-8859-1) لهذا التأكيد.

للحصول على معلومات عامة حول كيفية تغيير رأس مجموعة الأحرف في مكدسات شبكة مختلفة، راجع http://www.w3.org/International/O-HTTP-charset


2018-05-25 13:30

يقوم الخادم بوضع علامة واضحة على المستند على أنه ISO-8859-1 في رؤوس HTTP. حاول حفظ default.html باستخدام ترميز UTF-8 باستخدام محرر مناسب.


2018-05-25 03:07

حسنًا، لقد توصلت إلى حل جزئي لمشكلتي. وبما أن الملف default.html هو فقط الذي تسبب في التحذير، فقد افترضت أن الخادم كان يفعل شيئًا خاصًا به بسبب اسمه. لذلك قمت بإنشاء ملف home.html جديد بنفس محتوى ملف default.html وأشرت ملف .htaccess إلى الملف الجديد (انظر السطر 3 أدناه).

# استخدم PHP5 كتطبيق AddHandler الافتراضي/x-httpd-php5 .php DirectoryIndex home.html AddDefaultCharset UTF-8

أدى هذا إلى حل المشكلة وتم التعرف الآن على جميع الملفات باسم UTF-8. ما زلت غير متأكد مما يفعله الخادم بملف default.html أو مكان الإعدادات المتعلقة بهذا، ولكن مع اختفاء مشكلتي، سأنسى الأمر.

واحدة من المشاكل الأكثر شيوعا التي يواجهها المبتدئين مشرف الموقع(وليس فقط للمبتدئين)، هذا مشاكل مع الترميز على الموقع. حتى بالنسبة لي يظهر باستمرار عند إنشاء مواقع الويب " تعويذة"لكن لحسن الحظ، أعرف جيدًا كيفية حل هذه المشكلة، لذلك قمت بترتيب كل شيء في غضون ثوانٍ قليلة. وفي هذه المقالة سأحاول تعليمك بنفس السرعة حل المشاكل المتعلقة بالترميز على الموقع.

أول شيء جدير بالملاحظة هو أن جميع المشكلات المتعلقة بمظهر "abracadabra" مرتبطة بعدم التطابق بين ترميز المستند والترميز الذي حدده المتصفح. لنفترض وثيقة في ويندوز-1251ولكن لسبب ما يعرض المتصفح ترميز UTF-8. وقد يكون مصدر هذا التناقض هو الأسباب التالية.

السبب الأول

تتم كتابة العلامة الوصفية بشكل غير صحيح نوع المحتوى. كن حذرًا، يجب أن يحتوي دائمًا على الترميز الذي تمت كتابة المستند به.

السبب الثاني

يبدو أن العلامة الوصفية مكتوبة بالطريقة التي تريدها، ويعرض المتصفح ما تريده بالضبط، ولكن لسبب ما لا تزال هناك مشكلات في الترميز. يكاد يكون من المؤكد أن السبب هنا هو أن المستند نفسه يحتوي على ترميز مختلف. إذا كنت تعمل في المفكرة ++، ثم في أسفل اليمين يوجد اسم ترميز المستند الحالي (على سبيل المثال، أنسي). إذا قمت بوضع علامة التعريف ترميز UTF-8، والمستند نفسه مكتوب فيه أنسي، ثم قم بالتحويل إلى ترميز UTF-8(عبر القائمة" الترميزات" و نقطة " التحويل إلى UTF-8 بدون BOM").

السبب الثالث

السبب الرابع

وأخيرا، السبب الشعبي الأخير هو مشكلة في التشفير في قاعدة البيانات. أولاً، تأكد من أن جميع الجداول والحقول الخاصة بك مكتوبة بنفس التشفير، الذي يطابق تشفير باقي الموقع. إذا لم يساعد ذلك، فبعد الاتصال بالبرنامج النصي مباشرة، قم بتشغيل الطلب التالي:

تعيين الأسماء "utf8"

بدلاً من " utf8" قد يكون هناك ترميز مختلف. بعد ذلك، يجب أن تظهر جميع البيانات من قاعدة البيانات بالتشفير الصحيح.

في هذا المقال أرجو أن أكون قد أوضحت، على الأقل، 90% من المشاكل مرتبطة بظهور "الرطانة" على الموقع. الآن عليك أن تتعامل مع مشكلة شائعة وبسيطة مثل التشفير غير الصحيح في أي وقت من الأوقات.

في كثير من الأحيان، يواجه المدونون المبتدئون، وليس المبتدئين فقط، مشكلة ترميز صفحة HTML. عندما يتم عرض شقوق غير مفهومة بدلاً من النص والأحرف القابلة للقراءة. هذا هو الاسم الذي يطلق على الرموز التي لا تتوافق مع تلك التي يجب عرضها على الصفحة. من أين تأتي الحروف الهيروغليفية غير المفهومة؟

لفهم هذا، عليك أن تفهم ما هو ترميز صفحة HTML. يتم تمثيل أي نص على جهاز الكمبيوتر كمجموعة من البايتات. وفي كل بايت من هذه البايتات، يتم ترميز حرف واحد فقط برمز محدد. من أجل فك تشفير أو فك تشفير مجموعة من البايتات بشكل صحيح وتقديمها في نموذج يمكن قراءته بواسطة الإنسان، يحتاج المتصفح إلى مطابقة أحد جداول التعليمات البرمجية.

الترميز الأساسي هو ترميز ASCII، والذي يحتوي على رموز لـ 128 حرفًا من الأبجدية اللاتينية وأحرف خاصة (بين قوسين، وشبكات، وما إلى ذلك). ثم ظهرت أول ترميزات الأحرف الروسية CP866 وKOI8-R، ومنها جاء ترميز windows-1251 المعروف لمشرفي المواقع اليوم. على الرغم من أن كل هذه الترميزات مصممة لعرض النص الروسي، إلا أنها تختلف جميعها في التعليمات البرمجية عن بعضها البعض.

إذا تمت كتابة النص بترميز CP866، ويحاول المتصفح فك تشفيره باستخدام جدول رموز Windows-1251، فسنحصل في النهاية على كلمات غير قابلة للقراءة. بالإضافة إلى أسماء الترميزات التي ذكرتها هنا، هناك أيضًا عدد كبير جدًا من الاقتباسات. مع هذه الوفرة من جداول التعليمات البرمجية، نشأت مشكلة توافق الترميز. أصبحت مسألة إنشاء ترميز عالمي ملحة للغاية. اليوم، تم اختراع الترميز العالمي utf-8. عند برمجة موقع ويب، هناك أربع نقاط تتطلب الالتزام بمعيار واحد لترميز النص.

  • ترميزات البرنامج النصي.
  • ترميز جدول MySQL.
  • ترميز صفحة HTML نفسها.
  • اللغة التي يستخدمها متصفح المستخدم.

في جميع مكونات الموقع هذه، يجب استخدام ترميز واحد - ويفضل utf-8، لأنه عالمي.إذا قمت بالضغط على مجموعة المفاتيح CTRL+ U، فيمكنك عرض رمز الصفحة، الذي يوضح الترميز المستخدم لهذا المستند.

إذا قمت بفتح مدونتك ورأيت بعض الأحرف الغريبة بدلاً من الأحرف الروسية، فهذا يعني أنه تم ضبط التشفير بشكل غير صحيح.

كيفية تغيير الترميز؟

للتخلص من الأخطاء والمشاكل المتعلقة بتشفير مدونتك، نستخدم عميل FTP. بمساعدتها، انسخ ملف wp-config.php إلى "سطح المكتب" بجهاز الكمبيوتر الخاص بك وافتحه باستخدام محرر النصوص Notepad++. يحتوي هذا الملف على معلومات حول مدونتك - بما في ذلك كلمات المرور، وترميز قاعدة البيانات، والمزيد. دعونا نرى ما إذا كان الترميز مختلفًا، فيجب تغييره إلى UTF-8.

  • -حفظ في هذا الترميز.
  • - داخل كود قاعدة البيانات، قم بتغيير الترميز إلى UTF-8.

نقوم بحفظ الملف في محرر Notepad++، بالقيمة “UTF-8 بدون توقيع BOM” ونرفع الملف إلى استضافتنا، أي أننا نقوم بتغيير ملف wp-config.php القديم على الاستضافة , على الجديد.

كقاعدة عامة، تكون هذه الإجراءات كافية لعرض كل شيء بشكل صحيح على مدونتك. إذا لم ينجح أي شيء بعد الخطوات المذكورة أعلاه، فيمكنك تجربة طريقة أخرى لتغيير الترميز. للقيام بذلك، تحتاج إلى إجراء تغييرات على ملف .htaccess. لتصحيح ذلك، افتح ملف .htaccess باستخدام محرر Notepad++ وأضف أحد هذه السطور في البداية:

  • AddDefaultCharset UTF-8
  • تم تفعيل خاصية CharsetDisable
  • CharsetDefault UTF-8
  • CharsetSourceEnc UTF-8

قد يكون كافياً تغيير أحد الخيارات، وفي بعض الأحيان يكون الخيار الأول كافياً. إذا لم ينجح الأمر، فإننا ننتقل يدويًا إلى الخيارات التالية، وندخل الخيارات التالية واحدًا تلو الآخر. لا تنس تسلسل الإجراءات:

  1. افتح الملف في المحرر.
  2. نحن نجري تغييرات.
  3. يحفظ.
  4. رفع إلى الاستضافة.
  5. دعونا تحقق.

أريد أيضًا أن أذكر إحدى المشكلات التي قد تنشأ والتي واجهتها عند إنشاء صفحات الالتقاط. عند تحميل ملفات صفحة الالتقاط إلى الاستضافة، قد تنشأ أيضًا حالة عدم تطابق الترميز. في هذه الحالة، تحتاج إلى تصحيح ملف Index.html. للقيام بذلك، باستخدام FaleZilla، قم باستخراج الملف ونقله إلى "سطح المكتب" لجهاز الكمبيوتر الخاص بك. بعد ذلك، افتح الملف باستخدام المفكرة العادية.

بعد فتح الملف في برنامج "المفكرة"، انقر بزر الماوس الأيسر على "ملف" و"حفظ باسم...".

15.03.2016

ليس بعد


أهلاً بكم!
دعونا نواصل تعلم أساسيات HTML. في هذا الدرس سوف ننظر كيفية تحديد ترميز HTMLلموقع (صفحة ويب).
يعد هذا الدرس مهمًا جدًا لأن عدم معرفة كيفية تحديد التشفير لصفحة الويب يمكن أن يؤدي إلى عدم إمكانية قراءة صفحتك. تسأل: "كيف لا يستطيعون؟"
اسمح لي أن أوضح لك كيف تبدو مدونتي مع التشفير غير الصحيح:

لذا، ترميز HTML– هذه هي جداول المراسلات بين الرموز والرموز الأبجدية. وهذا يعني أن جهاز الكمبيوتر المشفر الخاص بنا سيقوم بتغيير الكود إلى أحرف واضحة وقابلة للقراءة.

لإخبار المتصفح بترميز الأحرف الموجودة على صفحة الويب، يلزمك الكتابة بين العلامات إليك علامة وصفية:

يرجى ملاحظة أن الكود يحتوي على كلمة "اسم الترميز". هنا تحتاج إلى تحديد ترميز HTML.
عادةً ما يكون هذا هو utf-8 أو windows-1251.

الترميز لأوتف-8:

التشفيرل ويندوز-1251:

إذا نسيت إخبار المتصفح بالتشفير الموجود في موقع أو صفحة ويب، فسيحاول المتصفح تحديد التشفير تلقائيًا، لكنه لا ينجح دائمًا بشكل صحيح. وفي النهاية ستكون النتيجة نفس ما أظهرته في الصورة أعلاه.

دعنا ننتقل إلى الممارسة.

كيفية إنشاء مستند HTML باستخدام
ترميز UTF-8

"كافة البرامج" => "الملحقات" => "المفكرة" :

<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>هذه هي العلامة الوصفية:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </p><p> <html> <head> <title>أول صفحة HTML لي على 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>انقر في المفكرة <span>"ملف" => "حفظ باسم..."</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>حيث تم تحديد العنصر "Encoding:" بـ "UTF-8". <br>انقر فوق "حفظ":</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>تكبير الصورة؟</p> <h3><span>كيفية إنشاء مستند HTML بترميز Windows-1251</span></h3> <p>افتح المفكرة القياسية. <span><i>"كافة البرامج" => "الملحقات" => "المفكرة"</i> </span>.<br>بعد ذلك، الصق كود HTML القياسي في المفكرة:</p><p> <html> <head> <title>أول صفحة HTML لي على 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>نشير الآن إلى نوع الترميز الذي يتم حفظ صفحة الويب به. للقيام بذلك، ضع بين العلامات <head></head>هذه هي العلامة الوصفية:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> </p><p>وهذا ما ينبغي أن يبدو عليه (السطر رقم 4):</p><p> <html> <head> <title>أول صفحة HTML لي على 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>انقر في المفكرة <span>"ملف" => "حفظ باسم..."</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>حيث يوجد عنصر "اسم الملف"، اكتب اسم صفحة الويب باللغة اللاتينية وبالامتداد ".html". أعتقد أنك تتذكر هذا من دروسك الأولى. <br>عندما يتم تحديد عنصر "الترميز:"، قم بالإشارة إلى "ANSI". <br>انقر فوق "حفظ":</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>هذا كل شئ!</p> <p>يختار معظم مشرفي المواقع ترميز UTF-8. لن أخبرك بالأسباب، لأنني أخشى أن أثقل كاهلك بمعلومات غير مطلوبة بعد في مرحلة معرفتك بـ HTML.</p> <p>على سبيل المثال، في المفكرة، قم بتعيين الكود:</p><p> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </p><p>وحدد "ANSI" عند الحفظ:</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>وبما أن هذا غير صحيح، فستكون النتيجة كما يلي:</p> <p>احفظ صفحات الويب الخاصة بك بشكل صحيح لتجنب نتائج مثل هذه</p> <p>المنشور السابق <br></span> <span>الإدخال التالي <br></p> <p>إذا كان الترميز غير صحيح، فسيتم عرض الموقع بأكمله أو جزء منه باسم "kryapozyablov"، أي. أحرف غريبة تجعل النص غير قابل للقراءة. يمكن أن يحدث هذا الموقف إذا تم تكوين ترميز خادم الويب بشكل غير صحيح أو إذا لم تكن هناك إعدادات. دعونا نفكر في الخيارات والطرق الممكنة لحل المشكلات</p> <h2>ترميز صفحة HTML غير صحيح <br></h2> <p>لنقم بإنشاء ملف اختبار:</p><p>Sudo gedit /var/www/html/encoding.html</p><p>دعنا ننسخ فيه:</p><p> <html> <head> <title>فحص الترميز



دعونا نفتح هذا الملف في المتصفح

كما ترون، تم اكتشاف التشفير بشكل غير صحيح بواسطة المتصفح:

هناك عدة طرق لتصحيح هذا الوضع. لنبدأ بأبسط شيء - حدد ترميز صفحة الويب بوضوح. ويتم ذلك عن طريق علامة وصفية، والتي يجب أن تكون موجودة داخل العلامة رأس:

دعونا نضيف هذا السطر إلى ملف الاختبار الخاص بنا بحيث يبدو كما يلي:

فحص الترميز

ملف الاختبار للتحقق من الترميز



وكما نرى في لقطة الشاشة التالية، فقد تم حل المشكلة:

إذا كان ترميز الملف الخاص بك مختلفًا عن ترميز UTF-8، ثم استبدله بـ ويندوز-1251أو الذي يطابق ترميز صفحة الويب. لمعرفة كيفية اكتشاف ترميز الملفات، قم بإلقاء نظرة.

كانت هذه هي الطريقة الأسهل لإصلاح مشكلة التشفير - دون تغيير إعدادات الخادم.

دعونا نعيد ملف الاختبار إلى حالته الأصلية ونواصل دراسة طرق تحديد التشفير.

إذا كانت الملفات .htaccessتم تمكينه بواسطة إعدادات Apache، ويمكن استخدام هذه الملفات لتحديد تشفير الصفحات المرسلة بواسطة خادم الويب. لتمكين دعم الملف .htaccessفي ملف تكوين Apache ( /etc/Apache2/Apache2.conf) العثور على مجموعة من الخطوط

فهارس الخيارات FollowSymLinksallowOverride لا شيء يتطلب كل ما تم منحه

واستبدله

السماح بتجاوز لا شيء

السماح بتجاوز الكل

بعد ذلك، يجب إعادة تشغيل الخادم.

سودو systemctl أعد تشغيل Apache2.service

ملف .htaccessيجب وضعها في نفس الدليل مثل الموقع. تتم استضافة موقعي في الدليل الجذر لخادم الويب. إذا كان لديك نفس الشيء، ثم الآن في المجلد /فار/www/html/إنشاء ملف .htaccessوأضف التوجيه إليه AddDefaultCharsetوبعد ذلك قم بالإشارة إلى الترميز المطلوب. أمثلة

AddDefaultCharset UTF-8

AddDefaultCharset windows-1251

يمكنك تحديد ترميز سيتم تطبيقه فقط على الملفات ذات تنسيق معين:

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

مجموعة الملفات يمكن أن تكون أي شيء، على سبيل المثال:

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

الخيار التالي هو بديل ويسمح لك أيضًا بضبط التشفير لملفات من نوع معين، ويتطلب تمكينه mod_headers:

مجموعة الرأس نوع المحتوى "text/html; charset=utf-8"

خيار آخر يمكن استخدامه أيضًا في الملف .htaccessلضبط ترميز UTF-8:

خيارات الفهرس + مجموعة الأحرف = UTF-8

إذا كان الموقع بلغة PHP، فقد تحتاج أيضًا إلى تكرار الترميز باستخدام php_value default_charset:

AddDefaultCharset windows-1251 php_value default_charset "cp1251"

بدلاً من إنشاء ملف .htaccess، يمكنك ضبط الترميز في ملف تكوين خادم الويب. بالنسبة لـ Apache CentOS/Fedora، هذا هو الملف httpd.conf، وفي Debian/Ubuntu، هذا هو الملف apache2.conf. أضف السطر التالي لضبط التشفير وإعادة تشغيل خادم الويب لتصبح التغييرات سارية المفعول:

AddDefaultCharset UTF-8

كيفية ضبط ترميز UTF-8 في PHP

في البرنامج النصي PHP، يتم تعيين الترميز على header، على سبيل المثال:

Header("نوع المحتوى: charset=utf-8");

عادة، إلى جانب الترميز، تتم الإشارة أيضًا إلى نوع المحتوى (في المثال، خيار صفحة HTML):

Header("نوع المحتوى: نص/html; مجموعة الأحرف=utf-8");

خيار آخر لخلاصة RSS:

Header("نوع المحتوى: نص/xml; مجموعة الأحرف=utf-8");

تذكر أن الوظيفة headerيجب أن يتم استدعاؤه قبل أي إخراج إلى المتصفح. بخلاف ذلك (إذا تم الإخراج إلى المتصفح بالفعل)، فقد تم إرسال الرؤوس بالفعل. من الواضح أنه في هذه الحالة لم يعد من الممكن تغييرها. إذا تم إخراج رسالة خطأ إلى المتصفح، فهذا يعني أن الرؤوس قد تم إرسالها بالفعل وسيتسبب استخدام الرأس في حدوث خطأ. للتحقق مما إذا كانت الرؤوس قد تم إرسالها بالفعل، استخدم headers_sent.

تعمل الطريقة الموضحة فقط عندما يقوم برنامج PHP بإنشاء محتوى الصفحة بالكامل. يجب عليك حفظ الصفحات الثابتة (مثل html) بتشفير utf-8. ستلاحظ معظم خوادم الويب ترميز الملف وتضيف رأسًا وفقًا لذلك. في الواقع، سيؤدي حفظ ملف PHP بتشفير utf-8 إلى نفس النتيجة.

ترميز غير صحيح للنتائج من قاعدة بيانات MySQL

إذا كان موقعك يتكون من جزء ثابت (قالب) وجزء ديناميكي، يتكون من البيانات الواردة من قاعدة البيانات، فقد ينشأ موقف عندما يكون هناك ترميز صحيح لجزء من الموقع، وجزء آخر من الموقع به ترميز خاطئ واحد. في هذه الحالة، من غير المجدي تغيير إعدادات خادم الويب - نظرًا لأن جزءًا من الصفحة سيكون به ترميز خاطئ.

عليك أن تبدأ بتحديد ترميز الجداول الخاصة بك. يمكنك أن تنظر إلى phpMyAdmin:

انتبه إلى العمود " مقارنة"، دخول" utf8_unicode_ci"يعني أن الترميز مستخدم ترميز UTF-8.

يمكنك الاتصال بـ MySQL DBMS والتحقق من ترميز الجداول بدون phpMyAdmin. لهذا:

Mysql -u الجذر -p

إذا نسيت اسم قاعدة البيانات، فقم بتشغيل الأمر:

عرض قواعد البيانات؛

لنفترض أنني أريد البحث عن ترميز الجداول في قاعدة بيانات information_schema

استخدام information_schema؛

إذا نسيت أسماء الجداول قم بتنفيذ الأمر:

عرض الأعمدة الكاملة من table_name؛

على سبيل المثال:

عرض الأعمدة الكاملة من GLOBAL_STATUS؛

سترى شيئا مثل هذا:

انظر العمود التجميع. في حالتي هناك utf8_general_ci، انها مثل utf8_unicode_ci، التشفير ترميز UTF-8. بالمناسبة، إذا كنت لا تعرف ما هو الفرق بين الترميزات utf8_general_ci, utf8_unicode_ci, utf8mb4_general_ci, utf8mb4_unicode_ciوأيضًا ما هو الترميز الذي يجب اختياره لقاعدة بيانات MySQL، ثم انظر.

الآن بعد أن عرفنا التشفير (في حالتي هو UTF-8)، في كل مرة تتصل فيها بـ MySQL DBMS، تحتاج إلى تنفيذ الاستعلامات بشكل تسلسلي:

تعيين الأسماء UTF8 SET CHARACTER SET UTF8 SET Character_set_client = UTF8 SET Character_set_connection = UTF8 SET Character_set_results = UTF8

في PHP يمكن القيام بذلك بشيء من هذا القبيل:

$this->mysqli = new mysqli($server, $username, $password, $basename); إذا ($this->mysqli->connect_error) ( $this->errorHandler_c->logError(1, "خطأ في الاتصال (" . $this->mysqli->connect_errno .") " . $this->mysqli->connect_error , $_SERVER ["REQUEST_URI"]); ) $this->mysqli->query("SET NAMES UTF8"); $this->mysqli->query("تعيين مجموعة الأحرف 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");

.لاحظ أن UTF8تحتاج إلى استبداله بالتشفير المستخدم لجداولك.

تغيير ترميز الملف

إذا قررت السير في الاتجاه الآخر وبدلاً من تثبيت ترميز جديد، قم بتغيير ترميز ملفاتك، ثم انظر إلى المقالة "". يخبرك بكيفية اكتشاف الترميز الحالي للملفات وكيفية تحويل الملفات إلى أي ترميز (وليس UTF-8 فقط).

كيفية معرفة الترميز الذي يرسله الخادم

إذا كنت تريد معرفة إعدادات التشفير التي يمتلكها خادم الويب (ما هو التشفير الذي يرسله في الرؤوس)، فاستخدم الأمر التالي:

Curl URL -s -o /dev/null -D /dev/stdout | grep -E "مجموعة الأحرف"

فيه بدلا من ذلك عنوان URLأدخل العنوان الحقيقي للموقع الذي تقوم بفحصه. إذا كان الموقع يستخدم HTTPS، فحدد عنوان الموقع مع البروتوكول، على سبيل المثال

الضفيرة https://softocracy.ru -s -o /dev/null -D /dev/stdout | grep -E "مجموعة الأحرف"

أي ترميز تختاره لموقع ويب؟