مجتمع سوالف سوفت: شكل ومفهوم جديد للمنتديات
من الموقع: نظرة عن قرب الى منتجات DMP التايوانية

 

العودة   سوالف سوفت > سوالف برمجة المواقع وتطويرها > PHP
المدوّنات البحث مشاركات اليوم جعل الأقسام مقروءة

الرد على الموضوع
 
LinkBack أدوات الموضوع
عضو سوبر نشيط
تاريخ الإنضمام: Jan 2002-
#1  
حصرياً...اجعل phpMyAdmin يدعم العربي UTF بدون مشاكل (2)


السلام عليكم ورحمة الله وبركاته

استكمالاً لموضوعناً السابق في العام الماضي حول حل مشكلة الترميز windows-1256 مع phpmyadmin
http://www.swalif.net/softs/swalif54/softs172401/

نعود عليكم بموضوع جديد ولكن هذه المرة حل مشكلة الترميزUTF مع phpmyadmin

طبعا كثير من الاخوة حاولوا بشتى الطرق لإظهار اللغة العربية بالإصدارات الجديدة من phpmyadmin ولم تظهر معهم وتظهر برموز غريبة لاحظ الصورة التالية



ولاحظ أن اللغة العربية تظهر بهذا الشكل مع أن المبرمج قام بالتالي:
- صفحة الإدخال UTF
- وقاعدة البيانات نوعها UTF
- وصفحة الاستعلام أيضا UTF (وتظهر اللغة العربية عنده بدون مشاكل)

توصيف المشكلة
------------------
أنا أتكلم عن من لا يواجه مشكلة مع اللغة العربية الا مع phpmyadmin يعني باختصار هناك اناس لديهم برامج تعمل بدون أي مشاكل مع اللغة العربية ويستخدمون الترميز UTF ولكن المشكلة اذا احتاجوا للدخول الى phpmyadmin لتعديل على بعض الحقول العربية تظهر لهم على شكل رموز غريبة كما في الصورة السابقة مع أنها في الموقع تعمل بدون مشاكل

الحل:
------
هو التعديل على phpmyadmin نفسه لكي تستطيع إظهار اللغة العربية بشكل سليم كما فعلنا مع windows-1256 في الموضوع السابق

اذا الطريقة الصحيحة هي التعديل على phpmyadmin لكي يكون متوافق مع برنامجك وليس أن نعدل برامجنا لكي توافق phpmyadmin لانه بالنهاية هل البرنامج يعمل بشكل سليم أم لا والواقع أن البرنامج يعمل بشكل سليم دون مشاكل.

الطريقة سهلة جدا ...

أولا:
قم بتحميل phpmyadmin اذا لم يكن لديك من الموقع الرسمي
اضغط هنا
phpMyAdmin

ثانيا:
قم بفتح ملف select_lang.lib الموجود داخل مجلد libraries
اذهب الى السطر 400أو ابحث عن

كود PHP:
'utf-8'        => 'utf8'
واستبدله ب
كود PHP:
'utf-8'        => 'latin1'
والآن يمكنك استخدم ال UTF بكل يسر وسهولة وقد جربت هذه الطريقة على أكثر من قاعدة بيانات من نوع Latin1 و من نوع utf8_unicode_ci ومن نوع utf8_general_ci وهذا يعني أنها إن شاء الله ستعمل على جميع الأنواع شاهد الصور



علما أنني جربت هذه الطريقة على phpmyadmin الاصدار 2.11.4 و الإصدار الأخير 2.11.9.1 ولا يوجد مشاكل وأيضا اللغة العربية تعمل مع الواجهتين العربية والإنجليزية

بالنسبة للإصدار الجديد 3.0.0RC2 جربته ولا ينطبق عليه الحل ننتظر النسخة النهائية

طبعا هناك حلول طرحت في نظري أنها ليست عملية وهو أن يتم تغيير الاتصال بقاعدة البيانات باستخدم
كود PHP:
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET Table_name utf8"); 
ولكن هذا ليس حلاً عملياً لأن هناك كثير من البرامج لم يحدد فيها طريقة الاتصال وتعمل على الترميز الافتراضي الذي حدده المستخدم و هناك كثير من الناس قاموا بإدخال البيانات بقاعدة البيانات ولا يمكنهم التراجع عن ذلك وهناك حلول طرحت لتحويل قاعدة البيانات ولكنها في نظري ليست الطريقة الصحيحة

ملاحظة: هذا الحل نتج بعد عدة محاولات لحل المشكلة واهدي هذا الحل لكل محب للغته العربية ولا أسمح بالنقل إلا مع ذكر المصدر

أخوكم
PHP4PRO






معرض المرفقات
إضغط على الصورة لرؤيتها بحجمها الطبيعي

الاسم:  rabish-UTF.jpg‏
الزيارات: 771
الحجم:  33.8 كيلوبايت  إضغط على الصورة لرؤيتها بحجمها الطبيعي

الاسم:  utf_edit.jpg‏
الزيارات: 757
الحجم:  78.6 كيلوبايت  إضغط على الصورة لرؤيتها بحجمها الطبيعي

الاسم:  UTF_success_edit.jpg‏
الزيارات: 755
الحجم:  93.3 كيلوبايت  إضغط على الصورة لرؤيتها بحجمها الطبيعي

الاسم:  utf_database_test.jpg‏
الزيارات: 777
الحجم:  160.9 كيلوبايت  
__________________
للمراسلة
http://php4pro.arabform.com
حل مشكلة العربي في phpMyAdmin
windows-1256
http://www.swalif.net/softs/showthread.php?t=172401
للUTF
http://www.swalif.net/softs/swalif45/softs241717/

آخر تعديل بواسطة php4pro في 17-09-2008 الساعة 12:14 AM. السبب: اعادة ترتيب للموضوع
php4pro is offline   قديم 16-09-2008, 04:58 PM
الرد مع إقتباس
عضو نشيط جدا
تاريخ الإنضمام: Aug 2007-
#2  

السلام عليكم

مشكور اخى العزيز php4pro

فعلا موضوع مهم تشكر عليه كان يضايق الجميع


تمت التجربة وفعلا ظبط معى

فتح الله عليك






__________________
أكاديمية الكترونيات العرب
دليلك لتعلم وصيانة الاجهزة الالكترونيات
راسلنا
0020104636205
info@electroarab.com
عمرو درويش is offline   قديم 16-09-2008, 05:49 PM
الرد مع إقتباس
عضو نشيط
تاريخ الإنضمام: May 2007-
#3  

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

قبل كل شيء تسلم علي مجهودك وتعبك ومشاركتك للمعلومة مع إخوانك . . . .

بس اتوقع لو تخلي كل القاعده من الألف للياء utf8_general_ci :

وتكتب هالكود في الكونفق :

كود PHP:
// ####################### SET MYSQL ENVIRONMENT ###########################
//HOST NAME
$host "localhost";
// DATA BASE NAME
$dataname "akar";
//USER NAME
$user "root";
//PASS WORD
$pass "root";
// DATA BASE CONNECT
$connect mysql_connect("$host""$user""$pass") or die("mysql_error()");
mysql_select_db("$dataname");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
mysql_query("SET character_set_database=utf8");
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_server=utf8"); 
يظبط معاك كل شيء بإذن الله وعن تجربة ^_^






__________________
Codeigniter .. عندما تكون البرمجة .. متعة بحق .. (1) (2) (3)
EGY2NET is offline   قديم 16-09-2008, 07:51 PM
الرد مع إقتباس
عضو نشيط جدا
تاريخ الإنضمام: Aug 2007-
#4  

السلام عليكم

اخى العزيز EGY2NET

مشكور جد

تقصد نضع فى ملف config لاى سكربت نكتبه هذا الكود

كود PHP:
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
mysql_query("SET character_set_database=utf8");
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_server=utf8"); 
نرجو التوضيح اكثر






__________________
أكاديمية الكترونيات العرب
دليلك لتعلم وصيانة الاجهزة الالكترونيات
راسلنا
0020104636205
info@electroarab.com
عمرو درويش is offline   قديم 16-09-2008, 08:10 PM
الرد مع إقتباس
عضو سوبر نشيط
تاريخ الإنضمام: Jan 2002-
#5  

إقتباس:
المشاركة الأصلية بواسطة EGY2NET مشاهدة مشاركة
من زمان استخدم هالطريقة بس حاسس إن فيه خطوات بالشرح مالها داعي

قبل كل شيء تسلم علي مجهودك وتعبك ومشاركتك للمعلومة مع إخوانك . . . .

بس اتوقع لو تخلي كل القاعده من الألف للياء utf8_general_ci :

وتكتب هالكود في الكونفق :

كود PHP:
// ####################### SET MYSQL ENVIRONMENT ###########################
//HOST NAME
$host "localhost";
// DATA BASE NAME
$dataname "akar";
//USER NAME
$user "root";
//PASS WORD
$pass "root";
// DATA BASE CONNECT
$connect mysql_connect("$host""$user""$pass") or die("mysql_error()");
mysql_select_db("$dataname");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
mysql_query("SET character_set_database=utf8");
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_server=utf8"); 
يظبط معاك كل شيء بإذن الله وعن تجربة ^_^
من الواضح أنك لم تقرأ الموضوع جيداً أخي الفاضل الطريقة التي شرحتها مختلفة تماما عما تعرف لا تحتاج للكود الذي وضعته اذا استخدمتها






__________________
للمراسلة
http://php4pro.arabform.com
حل مشكلة العربي في phpMyAdmin
windows-1256
http://www.swalif.net/softs/showthread.php?t=172401
للUTF
http://www.swalif.net/softs/swalif45/softs241717/
php4pro is offline   قديم 16-09-2008, 09:09 PM
الرد مع إقتباس
عضو مميز
تاريخ الإنضمام: Aug 2004-
#6  

كان لدي منتدي هكذا
وأستخدمت هاك ميلاد للتحويل للحقول من لاتين ل utf-8
أعتقد يمكن بطريقة برمجية جلب البيان ثم تحويله من لاتين ليونيكود ثم إعادت إدخاله كيونيكود وتحويل ترميز الحقل
وهذا فكرة هاك ميلاد او سكربت العندليب للتحويل

فالبيان تم إدخالة ك windows-1256 أو ك utf-8 علي حقل كان ترميزه latin فنشأت هذه المشكلة
فحتي مع تغير الحقل وتغير الإتصال للسكربت ستكون البيانات الجديدة فقط منضبطة
ولكن القديمة ؟؟؟؟؟؟؟؟؟؟؟؟؟؟

لهذا يجب غستخدام الطريقة التي ذكرتها






__________________
برامج
محب الله ورسوله is offline   قديم 16-09-2008, 09:51 PM
الرد مع إقتباس
عضو نشيط جدا
تاريخ الإنضمام: May 2007-
#7  

اخوي مشكور على مجهودك لكن المشكلة مش في phpmyadmin ... المشكلة فينا احنا لانو بالبداية بنقوم بادخال البيانات بترميز معين ومن ثم نريد ان تظهر بالعربية فنغير الترميز الى utf-8 ... كيف تريد ان ترى لغة صحيحة ادخلت بواسطة ترميز معين وتم تحويلها الى اخر لمشاهدتها ... يعني ما بدي اصيبك بالاحباط اخوي وموضوعك بالفعل مهم ومتعوب عليه لكن ما في لزوم لكل هالشرح ... يجب من البداية ادخال البيانات بترميز utf-8 وعندها نستخدم استعلام sql الاخير الذي قمت بوضعه وهذا يكفي ...

لمزيد من رأيي في هذا الباب هنا


الى الامام اخوي مجهود طيب .






__________________
EbNCaNa اخوكم ابن قانا

[درس] قائمة بريدية بأسهل الطرق بواسطة PHP

[توقيعك يجب أن لا يكون أطول من 400 حرف يتضمن تجاوز كود المنتدى] - الى متى المعاناة يا حضرة الأدارة ؟
EbNCaNa is offline   قديم 19-09-2008, 01:50 AM
الرد مع إقتباس
عضو فعال
تاريخ الإنضمام: Feb 2008-
#8  

جزاك الله كل خير






__________________
تعلم برمجة سكريبت جلب المحتوى خطوة بخطوة

مشروعى الصيفى ( ارائكم واقتراحاتكم )

Progress - 63%
||||||||||||||||||||||||||||||

لمراسلتي إضغط هنا

سبحان الله وبحمده سبحان الله العظيم
edafa.info is offline   قديم 19-09-2008, 07:16 AM
الرد مع إقتباس
عضو سوبر نشيط
تاريخ الإنضمام: Jan 2008-
#9  

ممكن حدا لو يشوف هل موضوع






__________________
اكبر مكتبة فيديو بالعالم بالشكل الجديد
http://tube.rodolphjarastv.com
اكبر مكتبة سكربتات مميزة
http://rodolphjarastv.com/forums/friend77/
*-*-*-*
bakry-sy@msn.com
bakry3d is online now   قديم 27-05-2009, 03:02 AM
الرد مع إقتباس
الرد على الموضوع


 

أدوات الموضوع

قوانين المشاركات
لا يمكنك كتابة مواضيع جديدة
لا يمكنك إضافة ردود
لا يمكنك إرسال مرفقات
لا يمكنك تعديل مشاركاتك

كود vB متاح
كود [IMG] متاح
كود HTML غير متاح
Trackbacks are متاح
Pingbacks are متاح
Refbacks are متاح


المواضيع المشابهه
الموضوع كاتب الموضوع القسم الردود آخر مشاركة
حصرياً ....أجعل phpMyAdmin يدعم العربي بدون مشاكل php4pro الويب والويب 2.0 والتجارة الالكترونية 50 08-06-2007 11:03 AM
ماهى مشكلة phpmyadmin فى appserv والترميز utf-8 moslem_tk الويب والويب 2.0 والتجارة الالكترونية 3 22-03-2007 01:55 AM
[بدون مشاكل] تحويل تشفير منتداك لـ UTF-8 أبو مايد التجارة في الأشياء الأخرى 6 02-09-2006 08:05 AM
الآن إستخدم الترميز UTF-8 بدلا من windows-1256 في قواعد البيانات بدون مشاكل أبو فيصل الويب والويب 2.0 والتجارة الالكترونية 32 23-01-2006 04:25 AM
حصرياً [ الماسنجر العربي اللإصدار السابع 7.0 ] بدون تعريب ولا كراك الوافي الأخبار المتعلقة بالإنترنت والتقنية 7 22-01-2005 12:01 AM


جميع الأوقات بتوقيت غرينتش +3. الوقت الآن هو 07:33 PM.