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

Poll

مغلق
بدأه Designer في 19 نوفمبر 2002 · 3 رد · 449 مشاهدة · في منتدى تصميم صفحات الويب
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

سؤالي هذا عن الـ Poll وهو كالتالي

لدي Poll، صفحته الرئيسية هي poll.asp بداخل فولدر اسمه poll

أضفت التصويت داخل الصفحة الرئيسية للموقع main.asp عن طريق:

[l]" width="148" height="170" marginwidth="0" marginheight="0" scrolling="no" frameborder="0">[/l]

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

هنا يبدأ السؤال:

أنا موقعي سيكون بإذن الله باللغتين العربية الإنجليزية، و أريد إضافة Poll بداخل الصفحة الرئيسية للقسم العربي main_ar.asp

أنا لا أريد أن أقوم بعمل لوحتي تحكم للإضافة و الحذف، أريد أن تكون نفس لوحة التحكم للصفحة poll.asp و الصفحة poll_ar.asp

بحيث:

poll.asp يكون فيها رقم ال poll هو pollno كما هو موضح أعلاه

حيث أنني من لوحة التحكم أحدد ما هو pollno

في

poll_ar.asp أريد أن يكون رقم الpoll هو pollno+1

أي فرضا:

إذا أنشأت تصويت في لوحة التحكم بحيث أن رقمه هو 1، فسوف يظهر في الصفحة الإنجليزية التصويت رقم 1 باللغة الإنجليزية

و أنشأ نفس التصويت من لوحة التحكم ذاتها و لكن باللغة العربية و بالتالي سيكون رقمه 2 (1+1) و يظهر في الصفحة العربية

بصراحة لقد حاولت كتابة الكود التالي في الصفحة العربية:

[l]+1" width="148" height="170" marginwidth="0" marginheight="0" scrolling="no" frameborder="0">[/l]

أي أنني أضفت +1 إليه أي أنه عندما يكون التصويت الفعال هو 1 يكون التصويت الفعال في هذه الصفحة هو رقم 1+1 (2) ولكن استلمت رسالة خطأ مفادها أنه لا يوجد poll رقمه

1 7

ما هي الطريقة الصحيحة؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

:D، سؤال ممل شوية و طويل، بس حبيت أوضح كل شي لحتى تقدروا تساعدوني :o

الموضوع كتير ضروري، رجاء الرد :)

مع الشكر

#2

قد يصلح هذا الكود .. :)

iframe src="/poll/poll.asp?ID=<%=rs("pollno")+1%>" width="148" height="170" marginwidth="0" marginheight="0" scrolling="no" frameborder="0">

فقط أدخلت ال +1 من الخارج إلى الداخل ..

بالنسبة لبناء صفحات متعددة اللغات فالأفضل وضع جميع المصطلحات في ال DATABASE وباختيار ال TABLE المعينة يتم اختيار اللغة .. أي يتم بناء arabic table و أخرى english table كل واحدة تحتوي على جميع المصطلحات .. وأيضا ممكن أن يتم وضع أسماء الصور في الداتابيس أيضا .. بهذه الطريقة يتم بناء ملف asp واحد من أجل جميع اللغات إن كانت عربية أو انجليزية ...

توجد العديد من المقالات في ال MSDN عن كيفية بناء صفحات متعددة اللغات باستخدام ASP ..

:)

Coding on the Cloud and for the Cloud!

My Blog

#3

السلام عليكم

أخ هاني، للأسف كنت قد جربت الكود الذي كتبته قبل أن أضيف السؤال هنا و لكنه لم يعمل أيضا

و لكنني قرأت الكود الموجود في الصفحة Poll.asp مرة أخرى حتى توصلت إلى الحل:

ما حل المشكلة أنه تم تعريف ال Poll ID من داخل صفحة Vote نفسها و ليس من الصفحة الرئيسية main.asp (داخل ال Iframe)

أي أنني عرفت ال Poll ID بأن يكون Active Poll ID+1

و نجحت الطريقة الحمدلله :)

بالنسبة لموضوع بناء مواقع متعددة اللغات، فسوف أقرأ عنها بتوسع بإذن الله في الـ MSDN

و لكنني حاليا صممت الموقع باستخدام ال asp و ssi حيث أن محتوياته كثيرة جدا، وقد قمت بعمل Layout يسهل عملية تحديث الموقع مستقبلا للغتين معا، بحيث إذا تم تعديل ملف يتم تعديله في القسمين العربي و الإنجليزي في نفس الوقت :D

وشكرا لك على هذه المعلومة التي ستفيدني في عملي كثيرا مستقبلا خاصة مع المواقع ذات الصفحات الكثيرة و باللغتين أيضا :(

مع التحية

#4

انا لم أقرأ الموضوع بسبب العجلة ..

بخصوص التصويت .. عادة ما يحدث أنه كما أشار هاني توجد المصطلحات الانجليزية و العربية في نفس الجدول ..

الذي يمرر لصفحة إضافة التصويت هو voteId فقط و هو المعرف الوحيد للسجل الذي سيتم عليه التعديل ..

الذي سيحصل حتى انه لو تم التصويت مرتين او 1000 في نفس اللحظة مهما كانت الواجهة فإنه يجب أن يعمل Application.Lock و بعدها تضاف العمليات الخاصة بالإضافة

ثم يفك الاقفال حتى يتم احتساب كل مرات التصويت التي تمت مهما كانت الواجهة عربية اة انجليزية فهذا لا دخل له ..

فنحن عملنا فقط التأثير على خانة مرات التصويت و هي موحدة للاثنين ..

بخصوص عرض اللغة ..

اعملي مثلا 4 حقول الأول به ال id و الثاني اسم الاختيار الخاص بالتصويت بالعربي arSelectiin و الثالث engSelection و الرابع عدد مرات التصويت طبعا يلزمك حقل خامس للربط بين الجدولين يحمل اسم ال voteID ..

المهم انت عند طلب عرض التصويت اذا كانت الصفحة انجليزية ترسلين باراميتر يدل على انها انجليزية و ان كانت عربية ترسلين باراميتر يدل انها عربي ..

الان عند العرض تقومين بعمل جملة شرطية و هي انه ان كان الباراميتر انجليزي معتاها اعرض الحقل engSelection أما اذا كان عربي اعرض arSelection .

اعتقد أن الفكرة وصلت ..

بالتوفيق..

You can fly while you can touch the sky

هذا الموضوع مغلق.

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