الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة اللغة العربيةmysql

بدأه asus في 13 مايو 2008 · 4 رد · 783 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدي قاعدة بيانات Mysql مستخدمة في كود php وتظهر النتائج باللغة العربية في الموقع بشكل صحيح ولكن عندما أستعرض قاعدة البيانات من php my admin لاأستطيع رؤية النص العربي وإنما يظهر encoded .

مشكلتي أني مضطرة لاضافة جداول جديدة على قاعدة البيانات وكلما أضفت جدول جديد وقمت بادخال بينات باللغة العربية عليه لايمكنني الوصول اليها من خلال الكود الموجود.

جربت أن أنسخ قاعدة البيانات إلى واحدة جديدة لها collation عربي لكني لم أستفيد.

أرجو ممن لديه خبرة في هذا الموضوع افادتي، وأكون شاكرة.

#2

1- عند بناء قاعدة البيانات ضعي نمطها utf8_general_ci

2- عند بناء أي جدول تأكدي من الحقول التي تحوي نصوص ترميزها أيضاً utf8_general_ci

وستظهر لك النتائج واضحة إن شاء الله ... حاولي إضافة حقل جديد ولاحظي النتائج

تم تعديل هذه المشاركة بواسطة koko_the_boxer في 13 مايو 2008 في 15:03

#3

حل هذه المشكلة بإتباع عدة خطوات بسيطة جداً

1 - نوع البيانات في الحقل تكون cp1256_general_ci

2 - في صفحة البي أتش بي وقبل جملة الإستعلام بصرف النظر عن إذا كان هذا الإستعلام Select أو جملة Update أو Insert أو Delete أكتبي السطرين التاليين

mysql_query("set character_set_server='cp1256'");

mysql_query("set names cp1256");

3 - يجب أن يكون هذا السطر مكتوب في منطقة ال Head للصفحة نفسها

<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />

----------------------------------------------

مؤسسة بناء وإتصال المعلومات

مهندس : محمد الجيلاني عبد المجيد

#4

طبعاً ممكن هذا الحل ... لكن الأحسن هو تحويل الداتا بيز للترميز العالمي utf-8

#5
koko_the_boxer كتب:
طبعاً ممكن هذا الحل ... لكن الأحسن هو تحويل الداتا بيز للترميز العالمي utf-8

بلفعل , لأن ترميز ويندوز 1256 له مشاكل كثيره

مواضيع مشابهة