السلام عليكم
بدي حدا يقنعني ليش الترميز cp1256 افضل من utf-8 وبدي اعرف هل من الممكن ان يجمع الموقع بين كون ترميز قاعدته cp1256 وبين كون صفحة عرض البيانات بترميز utf-8 >>> هل هذا يتناقض مع المعايير القياسية ؟؟
ومن جهة اخرى بدي من مناصري الترميز utf-8 ان يعطوني دفعة معنوية بآرائهم حول هذا الترميز عشان ما يكسحونا فريق ترميز cp1256
اولا انا مااقدر اقنعك ان cp1256 افضل من utf-8
لان العكس هو الصحيح utf-8 افضل من cp1256
الشي الثاني انت ممكن تستعمل في موقعك اي ترميز لكن كل قاعدة بيانات لها ترميز وعند عرض بيانات منها يجب استعمال نفس الترميز
مثلا لديك منتدى ترميزه cp1256 يجب ان تكون قاعدة البيانات نفس الترميز واستعمال ال meta للمنتدى بنفس الترميز
اي كالتالي :
كود:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
او
كود:
<meta http-equiv="Content-Type" content="text/html; charset=cp-1256" />
واذا كانت القاعده بترميز utf-8 عندما نعرضها يجب ان يكون الميتا utf-8
كود:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
طبعا اذا ما وضعنا هذا الامر لصفحات ال html كميتا راح يظهر النص اما علامات استفهام او يظهر على شكل مربعات او طلاسم
والسبب ان القاعده بترميز وصفحة العرض يترميز او بدون
------------------------------------------------------------------------------------
نأتي الان ماهو الفرق وماهو الافضل خلينا نحلل :
بسم الله الرحمن الرحيم
راح اجيبها لك بمثال : لنفرض انت تريد عمل موقع به 7 لغات ماذا ستفعل ؟
خليني نشوف واحد ضد ال utf-8 ونشوف ايش راح يعمل
راح ينشأ 7 قواعد بيانات كل واحده بلغه
عربي - انجليزي - صيني - فرنسي - الخ
وشغل موقعه ومبسوووووووط على الاخر ويحسب نفسه افضل من اللي استعمل utf-8
طيب مرت الايام وبدأ يضيف لموقعه بيانات ولنعتبر انه يقوم باضافة نفس البيانات في كل لغه اي نفس الموضوع وتفرق الترجمه
راح يقوم بالاتصال بـ 7 قواعد بيانات ليضيف الموضوع فيها "ياساتر"
يعني ضياع وقت وتحميل على السيرفر وزيادة مساحه وحجز قاعده على الفاضي
ضاع شغله وتعب المسكين وقال خلاص قفل المشروع
-----------------------------------------------------------------
اوكي جيت انا مناصر ال utf-8 ابغى اعمل مثل مشروعه
تعال شوف ايش راح اسوي :
1: راح انشأ قاعده واحده تعمل على utf-8
2: راح اضع في نفس القاعده متغيرات لكل لغه عشان اضع لكل لغه الحروف المناسبه لها
3: راح اعمل موقع واحد واسلوب واحد لعرض الصفحات واستخدم ميتا واحد فقط وهو utf-8
اوكي جيت الحين ابغى اضيف موضوع مترجم الى 7 لغات
راح ادخل على قاعدة البيانات وهي واحده وراح اجد امامي 7 مربعات او ادخاالات
احط في كل واحد الموضوع بلغته وبعدها ارسال
انتهى الموضوع وظهر في الموقع
--------------------------------------------------------------------
اوكي الان انا افضل من اللي اختار ترميز معين لكل لغه
لان عملت ترميز واحد يجمعهم كلهم وهذا الترميز راح يظهر على اي كمبيوتر في العالم
وتعال شوف هذا المثال بالوصلات 
الشخص اللي استعمل ترميز لكل لغه هذه راح تكون وصلاته
www.site.dot/ar/index.php
www.site.dot/en/index.php
www.site.dot/fr/index.php
www.site.dot/ch/index.php
www.site.dot/jp/index.php
www.site.dot/de/index.php
www.site.dot/it/index.php
لاحظ لكل لغه انشأنا root او path ولها خصائصها وطبعا كل واحد له قاعدة بيانات يتصل بها
وطبعا ممكن نجمعهم كـ dynamic url ويصيروا في path واحد فقط لكن ايضا راح يتصلوا بسبعه قواعد وايضا يجب تغيير طريقة العرض في كل صفحه لوضع الترميز الناسب
شوف اللي استعمل ترميز واحد utf-8 كيف صفحاته
www.site.dot/index.php?lang=ar
www.site.dot/index.php?lang=en
www.site.dot/index.php?lang=fr
www.site.dot/index.php?lang=ch
www.site.dot/index.php?lang=jp
www.site.dot/index.php?lang=de
www.site.dot/index.php?lang=it
لاحظ انه لايوجد استعمال لل path اي لدينا طريقة عرض واحده هنا وملفات واحده وهيدر او ميتا واحد هو utf-8
ايضا بما اننا حددنا اللغه في الوصله اذا من السهل معرفة ماذا نقوم بجلبه من قاعدة البيانات وباي لغه
----------------------------------------------------------------------------------------------------------------------------------
انتهينا من توضيح فكرة ال utf-8 نأتي لما يتم ذكره وتعبئة عقول الناس به
1: ال utf-8 ضعف مساحة اي ترميز اخر ...
بالطبع لانه يدعم جميع حروف العالم
من مثالي السابق اذا كنت تريد عمل موقع بـ 7 لغات ماذا تختار ال utf-8 ام ترميز لكل لغه
تعال احسبها ال utf-8 ضعفي اي ترميز
وهنا لدينا 7 قواعد بيانات و7 ترميزات للغه و7 احجام متساويه
بالطبع ستختار القاعده بـ utf8 لانها اقل منها كلها في حالة جمعهم مع بعض
2: يالللللللللله كل ماجي انزل هاك في المنتدى ولا انصب سكريبت يطلع مربعات !!!!
بسيطه : تأكد اولا ان لغة الملف للهاك او ترميزه هو utf-8 واذا لا قم بتحويلها
تأكد من وجود meta بلغة الترميز utf-8 بشكل صحيح
3: اعاني من مشكلة الكتابه بـ utf-8 ولا استطيع كتابة كلمه واحده على ملف php لتظهر صحيحه !!!
استعمل iconv في php وانسخ النتيجه والصقها في سكريبتك لتظهر صحيحه عند العرض
كود:
<?php
$a = 'حول هذه الجمله الى يونيكود';
echo iconv('windows-1256','utf-8',$a);
?>
نفذ ملف ال php راح تطلع ليك طلاسم انسخها كما هيا وضعها في سكريبتك
او استعمل دائما iconv في سكريبتك بشكل مباشر
بعض الاسئله التحليليه :
س - هل اعتمد utf-8 في مشاريعي المستقبليه ؟
نعم وبكل تأكيد
س - هل utf-8 تظهر على جميع المتصفحات وانواع انظمة التشغيل والايميل وبرامج الكمبيوتر والفلاش و"الجوال" وووو .. ؟
نعم في جميعهم لذلك سميت بـ universal unicode وليس المقصود فقط اللغات وانما اللغات والالات حتى
س - مالافضل لمحركات البحث من ناحية الترميز ؟
utf-8 بالتأكيد
س - اذا هناك شخص اجنبي "روسي مثلا" قام بدخول موقع عربي يعرض بترميز اللغه العربيه cp1256 وهذا الشخص لديه ويندوز اكس بي وليس لديه اللغه العربيه على هذا الجهاز .... كيف سيظهر الموقع لديه ؟
طلاسم ومربعات
س - اذا هناك شخص اجنبي "روسي مثلا" قام بدخول موقع عربي يعرض بترميز utf-8 وهذا الشخص لديه ويندوز اكس بي وليس لديه اللغه العربيه على هذا الجهاز .... كيف سيظهر الموقع لديه ؟
سيظهر عربي 100% وسوف يرى الكلمات بشكل صحيح دون الاحتياج الى وجود ترميز اللغه العربيه بجهازه
س - ارى بعض المواقع العربيه تستعمل روابط باللغه العربيه كيف ذلك ؟
عند استعمال utf8 يتيح لك هذا الترميز استخدام الروابط باي لغه لانها مقروءه ومفهمومه للمتصفح حيث سيتم تحويلها مباشره الى url encoder
اخيرا : صحيح ان فلاشيات مثلا يعمل بالترميز العربي وليس utf-8 وانا ذكرت هذا كله
ولكن لي سبب يجعلني لا احول الترميز وهو انني اخاف ان افقد قاعدة بيانات عمرها 7 سنوات وايضا ماتم ارشفته في جوجل او مواقع البحث
فعندما اقوم بالتحويل سوف افقد كل كلمه كان لها مصداقيه باللغه العربيه فالنسبه لجوجل راح تختلف اللغه ايضا
فمثلا سوالف فقدت الكثير من مصداقيتها بعد التحويل ولكن بالتأكيد سوف ترجع مع مرور الوقت
ولكن كل مشاريعي الجديده انا استعمل فيها utf-8
ماريد ان اوصله هو ان
"الاساس" يجب ان يبدأ بشكل صحيح مع utf-8
utf-8 افضل من اي ترميز موجود وليس فقط افضل من الترميز العربي cp1256 واخذ مساحه مضاعفه ليس سبب يجعلك لاتستخدمها
ارجو انكم تسفيدوا وتقتنعوا