الوصول للعالمية ( Unicode )
مدرج تحت قسم: مقالات
مع سرعة تطور الإنترنت وسرعة انتشاره ووصوله تقريباً إلى كل بلد وإلى كل منزل، بدأت الحاجة إلى تنظيمه وعولمته ليصل إلى هؤلاء المستخدمين بلغاتهم، وهنا ظهرت هذه المنظمات التي ترعى تطور هذه الشبكة العالمية وضمان وصولها بالشكل السليم إلى هؤلاء المستخدمين باللغة التي يفهومنها، وهنا ظهر ترميز Unicode.
Unicode هي مجموعة رموز عالمية تستخدم لتعريف جميع الرموز والحروف المستخدمة في أغلب لغات العالم وتجميعاً في ترميز واحد لستهيل عرض وإرسال المعلومات بغض النظر عن اللغة المستخدمة. هذا الترميز العالمي يستخدم من 1 إلى 4 بايت (البايت=8 بت) لترميز الحروف، ولم يستخدم حتى هذه اللحظه سوى ثلث العدد المتاح في Unicode لترميز حروف هذه اللغات.
هناك ثلاثة أنواع رئيسية تستخدم حاليا لترميز Unicode:
- UTF-8
وهو المفضل لدى مبرمجي الويب، حيث يستخدم 1 بايت إذا كانت الرموز موجودة في ترميز ASCII، وتستخدم 2 إلى 4 بايت للرموز المعقدة. - UTF-16
هذا الترميز يستخدم إما 2 بايت للترميز إذا كانت الرموز موجودة في Basic Multilingual Plane) BMP) و4 بايت للرموز الغير موجودة. - UTF-32
إما بالنسبة لهذا الترميز فإنه يستخدم 4 بايت على الدوام .
| A | א | 好 | ||
|---|---|---|---|---|
| Code point | U+0041 | U+05D0 | U+597D | U+233B4 |
| UTF-8 | 41 | D7 90 | E5 A5 BD | F0 A3 8E B4 |
| UTF-16 | 00 41 | 05 D0 | 59 7D | D8 4C DF B4 |
| UTF-32 | 00 00 00 41 | 00 00 05 D0 | 00 00 59 7D | 00 02 33 B4 |
جدول1: مقارنة الرموز مع ما يقابلها من ترجمة – المصدر
وهناك الكثير من الاشتقاقات لهذا الترميز العالمي Unicode منها UTF-2 و UTF-7 وقد أرفقت بعض المراجع لزيادة الاطلاع.
وبعدما عرضنا وعرفنا ماهو Unicode وأنواعه المختلفه، عليك أن تعلم أخي الكريم أن هذا الترميز لا يستخدم فقط في صفحات الويب، وإنما صمم ليشمل كل الملفات التي يمكن تخزينها على أي جهاز الكتروني، والآن قد جاء السؤال المهم وهو لماذا كل هذا الاهتمام بهذا الترميز؟ وهل علينا فعلاً التحول لاستخدامه؟
والجواب سأحاول تلخيصه في عذة نقاط رئيسية تهم مصممي الويب خصوصاً.
- الوصول بموقعك إلى العالمية، صمم لكي يرى كل الناس عملك وﻻ تجعله حكرا لنظام تشغيل معين، أو متصفح معين، حيث ليس لدى الجميع نظام تشغيل Windows كي يستطيعوا رؤية صفحتك المرمزة بترميز Windows-1256.
- تبادل المعلومات، وهذا الجزء مهم جدا حيث كما تعلم أصبح تبادل المعلومات وخصوصا عن طريق لغة XML كبير جدا ومتوسع، فمن المهم أن يفهم الطرفان ما يحتويه ملفات تبادل المعلومات من محتوى.
- احترافية التصميم ومتابعة المعايير القياسية، وهذه لعلها قد تكون أهم ما تنادي به منظمة الويب العالمية في مقالها حول عولمة الويب.
الخطأ الشائع بين مصممي الويب
هناك الخطأ الشائع بين مصممي صفحات الويب وهو اعتقادهم أن سطر الميتا Meta_tag:
<meta http-equiv=”content-type” content=”text/html; charset=utf-8” />
أو بمجرد تغيير ترويسة الصفحة header :
<?php header(’Content-Type: text/html; charset=utf-8‘); ?>
يظنون أنه وحده يكفي لترميز الصفحة بالترميز المناسب، والصحيح أن هذا السطر ما هو إلا لجعل المتصفح فقط يترجم ما تحتويه الصفحة من رموز إلى ما هو موجود بهذا السطر ويبقى ترميز الملف نفسه بالترميز الذي خُزّن به، وكما تعلم عزيزي القارئ بغض النظر عن نوع الملف، فإن أي ملف يتم تخزينه في الحاسب يتحول إلى مجموعة من البايتات المشفرة على حسب نوع الترميز المستخدم في التخزين وعند طلبها فإنه يتم ترجمتها باستخدام نفس الترميز، لذلك فمن المهم التأكد دائما من نوع الترميز المستخدم في ملفاتك قبل تخزينها ومن ثم إضافة السطر المساعد سواء كان ميتا أو ترويسة لمساعدة المتصفح على اختيار النوع المناسب لفك التشفير.
المراجع وبعض الوصلات المفيدة
التعقيبات
- المشروع - تطوير المواقع » Byte Order Mark - BOM
- غير معروف
- غير معروف
- حِيَل ورموز Unicode ربما لم تكن تعرفها


مشكور اخي الكريم
سؤال كيف انا فيني اغير ترميز تخزين الملفات على الكمبيوتر
يا مرحبا بك أخي RedMan
أما بالنسبة لتغير الترميز للملفات فيمكنك ذلك عبر أي محرر نصي متقدم عند تخزين هذا الملف، وفي حالة نظام تشغيل Windows XP هناك المفكرة أو Notepad وعندما تحفظ أي ملف اختر نوع الترميز أو Encoding من القائمة المنسدلة في الأسفل، ومن هذه الاختيارات:
ANSI
Unicode
Unicode Big endian
UTF-8
وتختلف الطريقة من محرر لآخر، ولكن الفكرة تظل كما هي، أتمنى أن أكون قد أفدتك.
شكرا جزيلا
معلومات ولا اروع يا اخوان
شكرا لك أخي bader على تعقيبك ومرورك الكريم
اخي الغالي شكرا لك على الايضاح لكن الهدف من سؤالي هو كل البرامج و الملفات تكون بنفس الترميز اي ملفات الويندوز و ملفات النصوص و كل شيء
فقط ملفات النصوص أخي رد مان.. ملفات النصوص، وأعني بذلك صفحات الـHTML وما شابهها
مشكور اخوي عبد الرحمن على المقال الحلو … يعني عشان اخلي صفحات موقعي utf-8 يجب ان اغير امرين … اولا تروسية الصفحة يعني بدك windows-1256 والامر الثاني هو ترميز الملف البرمجي نفسو … يعني بدل ما استعمل ANSI احولو لـ utf-8 ؟؟ هل هذا يكفي ام هناك خطوات اخرى يجب علي اتخاذها …
واذا عملت هيك هل utf-8 داعمة للغة العربية بدون مشاكل ؟؟ وبدون مشاكل في اجهزة المستخدمين ؟؟
مشكور مرة اخرى حبي وبتمنى اشوف جواب على اسئلتي والى الامام .
@EbNCaNa
نعم أخي الكريم كما تفضلت وأسلفت أنه عندما تريد أن تجعل صفحاتك مرمزة بترميز utf-8 أن تحفظ هذه الملفات بترميز utf-8، وهذه أهم خطوة، أما الخطوة الثانية وهي إضافة الترويسة فهي لإجبار المتصفح على اختيار ترميز utf-8 لعرض هذه الصفحة.
أما بالنسبة لدعم utf-8 للغة العربية، فبالتأكيد نعم، حيث أن هذا الترميز لم يخلق إلا لدعم جميع لغات العالم، وهناك المساحة لإضافة المزيد أيضا، وباستخدامك لها الترميز تضمن لمشروعك قابلية الوصول مهما كان نوع المتصفح أو نظام التشغيل الذي يستخدم، عكس ترميز windows-1256.
انا مشرف على منتدى في بي وعلى مجلة نيوك
بالنسبه لمنتدى الفي بي
انا غيرت الترميز في ملف التعريب الى Unicode
ولا اجد اي تغير في الرسائل الى ايميل الهوتميل لازالت تأتي برموز غريبه
وعن مجلة النيوك لا اعلم اي ترميز لاكن سأرى المجله ان شاء الله
سؤوال بعض السكربتات لاتعمل بصوره جيده الا بعد تركيب قاعدة البيانات بترميز لاتيني 1
هل يحدث تعارض ان غيرنا ترميز التصميم او ملف التعريب لها؟؟
@ سامي
نظرا لعدم تعمقي بالمنتديات فلا يمكنني الإجابة على سؤالك بالتحديد، اعذرني، ولكن كمفهوم عام يجب عليك أن تعيد ترميز البيانات المحفوظة في قاعدة البيانات نفسها إن كان موقعك يعتمد على قاعدة بيانات، ومن ثم ترميز ملفات عرض البيانات على الموقع.
اخوي نفرض انا حابب اعمل موقعي كلو utf-8 وغيرت كل الملفات وما شاء الله عليه تمام … لكن ظهرت عندي مشكلة وهي : عندما احول الترميز تظهر اللغة العربية تمام لكن يجيني خطأ من المتصفح وهو كالتالي :
Cannot modify header information – headers already sent by طبعا هالخطأ معروف ويحكيلك انو تم ارسال بيانات تم ارسالها مسبقا بالمتصفح وهالشي مش صحيح لانو لما ارجع الترميز الى ANSIالخطأ بروح !! شفت بمواقع اجنبية وكان يقال انو المفكرة محرر مش متطور كفاية ولما احفظوا utf-8 بتزيد قيم bit على الملف قصة معقدة ما فهمتها .. لكن بقول الحل انو استعمل برنامج تحرير hex اشيل القيم الاضافية … عندك فكرة
عن الموضوع ويا ريت الحل باسرع وقت حبيبي .
سلامات .
EbNCaNa
هذا الخطأ لم توضحه أخي الكريم، أقصد هل هو خطأ برمجي أو خطأ توصيفي؟ في الأغلب أعتقد أنه خطأ برمجي للغة PHP إن لم أكن مخطئا، ولكن على كل حال أظن أني فهمت مشكلتك وهي بالفعل من برنامج محرر النصوص التقليدي لنظام ويندوز “المفكرة”.
برنامج المفكرة معروف بإنه يضيف مايسمى Byte Order Mark (BOM) في بداية كل ملف يخزن بترميز UTF-8، وهذه العلامة BOM هي مجموعة من البايت Bytes في بعض الأحيان تسبب مشاكل في المتصفحات، كعرض سطر فارغ في بداية الصفحة، وغيرها من المشاكل، وللأسف ﻻ يمكن في بعض الأحيان رؤيتها في محررات النصوص لمسحها، ولكن في الغالب يتم حل المشكلة بفتح الصفحة في محرر نصوص آخر [وتخزينها مرة أخرى بطريقة أخرى]، ولدى منظمة الويب [مقال عن هذه المشكلة والحلول المقترحة لها] للتعمق أكثر.
اخوي بارك الله فيك على التجاوب …
قرأت المقال وكان رائع جدا … وعن طريق ادارة رائعة تبين انو الملف يحوي BOM … الحين بدنا نيجي على طريقة حذف البوم … اول شي حاولت البحث عن برنامج BOM-aware editor لكن ما لقيت شي عن هالشكل بالانترنت … بعدين حاولت تشغيل كود البيرل المرفق بهالصفحة : http://rishida.net/blog/?p=102 لكن ما افلحت بالمرة …
يا ريت اخوي لو تحكيلي كيفية تشغيل كود البيرل مع العلم انو عندي بالجهاز Activeperl .. او انو تبحث معي عن برنامج BOM-aware editor !!!
اداة البحث عن Bom داخل الملف :
http://people.w3.org/rishida/utils/bomtester/
بارك الله فيك اخوي على الدعم الرائع ويعطيك الف عافية .
اخوي بارك الله فيك … لقيت الحل … بدون كود بيرل ولا هم يحزنون .
كل ما عليك تنزل محرر PSPad القوي جدا … وتفتح الملف الي فيه BOM بواسطة محرر الهيك HEX المرفق مع البرنامج وتشيل القيمة قبل افتتاح الكود ?> وتحفظو ومبروك .
تسلم حبيبي على الدعم والى الامام للجميع .
مشكلة البدايه الغبيه فى الصفحات dom
تشابكت مع محركات البحث وقرأت مواضيع كثيره جداً لحل هذه المشكله ووصلت أخيراً لهذا الموضوع .. الذى وضع الحل التام للمشكله .. ولا عجب فى ذلك
فالمشروع يعد اكبر مصدر استفدت منه كمبرمج منذ معرفتى به ..
بارك الله فيكم وجزاكم كل الخير عن كل حرف كتبتموه بايديكم وافاد اخرين
تحيتى وتقديرى الشديدين احبائى
الله يبارك فيك يا اخي ….. والله انو مشكلة الترميز هذه ارقتني طويلا ودخت وانا ادور بالمنتديات على الحل بدون فايدة .
الى ان وجهني المتصفح الى هذه المدونةالرائعة والتي عن طريقها حليت مشكلة عدم ظهور الكتابة بالعربية ….
من لا يشكر الناس لا يشكر الله ….. فشكرا لكم والى الامام
اود الاشتراك في منتداكم الكريم وذلك لأستفادة من المواضيع المهمة لديكم وحل مشكلة عندي في الموقع هذا http://www.dweik.net/arabic