السلام عليكم ورحمة الله وبركاته
كيف أجعل موقع يدعم لغات متعددة وماهي اللغات التي ممكن أعملها وما هي الية
شكرا.
السلام عليكم ورحمة الله وبركاته
كيف أجعل موقع يدعم لغات متعددة وماهي اللغات التي ممكن أعملها وما هي الية
شكرا.
عليك أن تعرف أحد لغات server side مثل php,asp.net وهكذا + وجود قاعدة بيانات مثل mysql,mssql وهكذا..
الفكره أن قاعدة البيانات موجود بها محتويات الموقع .. ممكن تعمل قاعدة بيانات لغة معينة وقاعده أخرى للغة أخرى والفكره أن المستخدم سيضغط فى البداية على اللغة التى سيختارها فيكون فى العنوان متغير يجلب لك المعلومات من قاعدة البيانات ..
مثال:
لو عنوانك
http://arabteam2000.com
يضغط المستخدم على العنوان العربى من الموقع مثلا فيكون
http://arabteam2000.com/index.php?language=arabic
هنا المتغير اسمه language وقيمته arabic ومنها يتم الاستعلام من الداتابيز فى جملة select .. ببساطه!
وتجد بعض المواقع تستخدم mod_rewrite لجعل العنوان على هذه الصوره الأفضل:
http://arabteam2000.com/language/arabic
ممكن أن تحفظ معلومات المستخدم فى سيشن، أو كوكيز لو أراد أن يظل على الصفحه بنفس اللغة دائما ..
شكرا لك يا أخ anwarica
لكن العملية غير واضحة بالنسبة لي أقصد اليتها وأنا أعرف أحد هذه اللغات وهي php
هل كل محتويات الموقع أحط في جدول أو الترجمة تتم تلقائيا مش واضحة يا أخي,ممكن توضح لي أكثر لوتكرمت
والسلام
عذراً على المقاطعة،
ولكن ماذا تقصد أخي anwarica بهذا الكلام:
anwarica كتب:وتجد بعض المواقع تستخدم mod_rewrite لجعل العنوان على هذه الصوره الأفضل:http://arabteam2000.com/language/arabic
وكيف يتم ذلك؟
SoProgramer كتب:هل كل محتويات الموقع أحط في جدول أو الترجمة تتم تلقائيا مش واضحة يا أخي,ممكن توضح لي أكثر لوتكرمت
محتويات الموقع، كل category أو فئة من الموقع توضع فى جدول ... مثلا الأخبار لها جدول news وقسم شرح كذا له الجدول الفلانى وهكذا .. ممكن نعمل جدول news_ar خاص بالعربى وجدول تانى news_en خاص بنفس الأخبار بالانجليزى!
طبعا المتغير الذى اعطيت له مثال languages هيسحب من الجدول العربى لما تكون القيمة عربى ومن الانجليزى لما تكون انجليزى!
بسيطه :D
اقتباسوتجد بعض المواقع تستخدم mod_rewrite لجعل العنوان على هذه الصوره الأفضل
هذه خدمة خاصة بالأباتشى وهى تحويل الصفحات الديناميكية إلى صفحات عادية بحيث تفهمها محركات البحث وتكون أكثر سهوله فى القراءة للمستخدم وهذا مقال عنها:
أخي anwarica
هل من الممكن برمجة الموقع بحيث يختار اللغة بشكل أوتوماتيكي؟
يعني يقوم الموقع بالاستعلام عن اللغات الموجودة على جهاز المستخدم..
إذا وجد اللغة العربية معرفة مثلاً،
فإنه يعرض النسخة العربية،
وإذا وجد اللغة الإنجليزية فقط،
يقوم بعرض نسخة الموقع الإنجليزية..
هل هذا ممكن باستخدام لغة ال php ؟
وشكراً مقدماً
:)
ala101 كتب:هل من الممكن برمجة الموقع بحيث يختار اللغة بشكل أوتوماتيكي؟
بالتأكيد (h)
ذلك متاح فى معظم اللغات .. ولكنى أفضل الجافا سكريبت لأنها ستقوم بالشمشمه:D sniffing .. البعض يفكر أن استخدام الاى بى وتحديد الدوله أمراً فعالاً لكنه غير منطقى!
افترض أن الآى بى صينى والجهاز لشخص أمريكى ولا يدعم اللغة الصينيه! أو أن المتصفح نفسه لا يدعم خطوط لغة أو نظام التشغيل ... الخ
هناك بعض الأمثلة أحاول احضارها بعد قليل إن شاء الله ..
علما أنه فى البيشو فى HTTP_ACCEPT_LANGUAGE لشم الهيدر ..
المقادير:
<head>
<script LANGUAGE="JavaScript1.2">
if (navigator.appName == 'Netscape')
var language = navigator.language;
else
var language = navigator.browserLanguage;
if (language.indexOf('ar') > -1) document.location.href = 'index_ar.php';
else if (language.indexOf('en') > -1) document.location.href = 'index_en.php';
else
document.location.href = 'index.php';
</script>
</head>طريقة العمل:
1- سخن الملف index.php وضع الكود المكتوب أعلاه.
2- حضر ملف index_ar.php واكتب فيه أى كلمة عربى.
3- حضر ملف index_en.php واكتب فيه أى كلمة انجليزى.
4- شغل الملف index.php على السيرفر المحلى وبالهنا (h)
شكر عالي التقدير لك أخي anwarica على هذه المعلومات الجميلة ...
شكرا لك يأخ,الف شكر, هل بالإمكان تشرح لنا الكود
SoProgramer كتب:شكرا لك يأخ,الف شكر, هل بالإمكان تشرح لنا الكود
الكود لا يحتاج شرح! هما سطرين!
والكود يقول إن وجدت المتصفح عربى اظهر صفحة عربى ولو وجدته انجليزى اظهر صفحة الانجليزى :D
anwarica كتب:الكود لا يحتاج شرح! هما سطرين!والكود يقول إن وجدت المتصفح عربى اظهر صفحة عربى ولو وجدته انجليزى اظهر صفحة الانجليزى :D
الله يجزيك الخير أخي محمد،
هل يمكنني استخدام الكود في هذه الصفحة:
حتى تقبل اللغة العربية من المستخدم؟
المشكلة فيها أنه إذا قام أي شخص بكتابة الرسالة بالعربي فإنها تصلي بأحرف غير مفهومة..
لذلك وضعت ملاحظة في الصفحة "Message: "Please Write your Message in English "
وشكراً مقدماً
:)
لأنه أخى علاء يتم تخزين التعليق فى داتابيز تبع bravenet ثم يرسلون المحتوى لبريدك بترميز غربى :D
هذا الموضوع مغلق.