أو بدلاً من إدخال الأخ في متاهات قد تجعله يكره لغة الـ PHP وسوالف سوفت وأعضاءها ..
يمكننا أن نشرح الفكرة نظرياً ، وإذا توقفت عند نقطة معينة يمكنك السؤال عنها ..
1. إنشاء جداول قاعدة البيانات
قد يكفي لذلك جدولان ، واحد للأسئلة ، والآخر للإجابات ..
Questions
حقوله: id, question, votes
Answers
حقوله: id, answer, quessid, votes
2. آلية السكربت
تكمن آلية سكربت الاستفتاء بعرض إحدى الأسئلة ( كيفما تشاء ) وعرض جميع الإجابات المتاحة المتعلقة بنفس السؤال ..
فمثلاً إذا عرضت السؤال الذي يحمل id برقم x سوف تعرض جميع الإجابات أسفله التابعة له والتي تحمل quessid = x وذلك من خلال استعلام أو استعلامين ( حسب قدرتك البرمجية ) في استخراجها من قاعدة البيانات ..
كل إجابة بجانبها input من نوع radio ، وتحمل name واحد ، ويميزها الـ value ..
عند إرسال الفورم ، سيتم تحديث عداد الأصوات للإجابة المحددة ..
مثلاً :
كود:
update `Answers` set `votes` = `votes` + 1 where `id` = y
حيث y هي الإجابة التي تم اختيارها من قبل المستخدم ..
كما يجب تطبيق نفس الأمر على جدول Questions لزيادة عداد الأصوات الكلي في كل مرة .. مع تحديد id السؤال الذي تم التصويت عليه ..
3. عرض النتائج
عند عرض النتائج ، يمكن جلب السؤال بواسطة الـ id والذي سنفرضه x مرة أخرى ، وجلب جميع النتائج ( بنفس الطريقة السابقة ) ، ثم حساب نسبة مئوية لكل إجابة ..
حساب النسبة المئوية لكل إجابة ببساطة سيتم بقسمة عدد أصوات كل إجابة على عدد الأصوات الكلي في جدول Questions ..
لنفرض أننا جلبنا السؤال رقم x ، نقوم باستدعاء إجاباته بواسطة quessid = x ..
ثم نقسم حقل votes من جدول Answers على votes من جدول Questions ، ونضرب الناتج بـ 100 .. ثم نعرض النتيجة على هيئة نسبة مئوية ( % ) ..
طبعاً يمكن تمثيلها بشريط ملوّن ببساطة باستخدام عرض مئوي لشريحة div أو باستخدام جدول .. المهم أن العملية تنسيقية في x/html و css إن احتاج الأمر ..
4. تشغيل الدماغ !
في هذه الخطوة ستتحقق من كافة المشاكل ، كمشاكل القسمة على صفر وغيرها من الأمور التي يجب أن تتفاداها ، قم بتطوير سكربتك بذكاء .. حيث أن ذلك لن يكلّفك سوى الولوج إلى " محرك دماغك " والبحث بداخله ، ستسغني حتى عن Google ..
أتمنى أن أكون قد أفدتك ولو بالقليل ، دعواتك ..
ومن ثم استفساراتك إن احتجت أي مساعدة
..
تحياتي، أشرف السمهوري