در این جا قصد داریم تا نحوه ساخت یک فرم نظرسنجی در PHP را به صورت پروژه عملی نشان دهیم. این پروژه شامل 5 فایل PHP و یک پایگاه داده MySQL است. در هر بخش از راهکار به تشریح یک جزء این پروژه خواهیم پرداخت.
- بخش اول : که در آن سوال مورد نظر را برای کاربران خود طرح می کنید.
- بخش دوم : که به کاربران شما این امکان را می دهد تا نظر خود را ثبت کنند.
- بخش سوم : در نهایت نیز بخشی که در آن می توانید نتایج حاصل از نظرسنجی را ببینید.
حتما بخوانید: خواندن و حذف کوکی (Cookie) در PHP
تست فایل های دانلود شده برای پروژه :
برای تست فایل های پروژه ، پوشه survey را درون پوشه www سرور PHP کامپیوترتان کپی نمایید.
برای شروع، فایل setQyestion.php که برای ایجاد سوال های نظر سنجی طراحی شده است را با تایپ یکی از آدرس های زیر در مرورگر باز کنید. ( پس از اجرای wampserver سرور PHP بر روی کامپیوتان ) :
localhost/survey/setQuestion.php |
127.0.0.1/survey/setQuestion.php |
قبل از اینکه سوالات خود را تایپ کنید، ضروری است که فایل پایگاه داده را در مکان مناسب برای ذخیرهسازی سوالات و پاسخها قرار دهید. در غیر این صورت، با پیام خطا مواجه خواهید شد.
برای این منظور پوشه حاوی فایل پایگاه داده به نام mysql/data را در آدرس زیر در سرور PHP ویندوزتان ، کپی نمایید :
C:\wamp\bin\mysql\mysql5.5.8\data |
اگر پایگاه داده به صورت موفقیت آمیز کپی شد، آدرس زیر را در مرورگر خود تایپ و اجرا نموده تا صفحه سرور phpMyAdmin به صورت زیر باز شود :
/http://localhost/phpMyAdmin> |
حتما بخوانید: آموزش ارسال ایمیل ( Email ) به وسیله PHP
طراحی پایگاه داده لازم برای فرم نظرسنجی در PHP
پنجره phpMyAdmin یا سرور پایگاه داده MySQL را باز کنید.
در حین باز بودن این پنجره، بر روی منوی “Please select a database” کلیک کنید تا فهرست پایگاههای داده که بر روی سیستم نصب شدهاند، نمایش داده شود.
می توانید با کلیک بر روی نام های جداول، ساختار آنها را مشاهده نمایید. همچنین با کلیک بر روی دکمه Browse، همانند تصویر زیر ، اطلاعات موجود در هر کدام از جدول ها را مشاهده نمایید :
معرفی جدول tblQuestions :
بر روی دکمه Browse در مقابل نام جدول کلیک نمایید . همانطور که می بینید این جدول دارای 5 فیلد اصلی به شرح زیر است :
- QID
- Question
- qA
- qB
- qC
جدول tblQuestions تاکنون دارای 4 رکورد اطلاعاتی است که هر رکورد ، مشخصات یک سوال را نگهداری می کند .
فیلد QID ، شناسه هر سوال بوده و در این جدول کلید اصلی نیز است ( Primay Key ) ، یعنی نباید مقدار این فیلد در هیچ دو رکورد یکسان باشد . از این شناسه برای تشخیص سوال در سطح برنامه استفاده می شود .
فیلد QID به همین صورت نیز در جدول answers وجود داشته و این امکان را به ما می دهد تا دو جدول را به هم پیوند بزنیم . سپس اطلاعات ترکیبی مورد نظر خود را از هر دو جدول ، استخراج نماییم .
همچنین فیلد Question شامل شرح سوال و فیلدهای qA , qB , qC به ترتیب گزینه های هر سوال را شامل می شوند .
حتما بخوانید: مفهوم و کاربرد Session در PHP
جدول answers :
در بخش بعدی با کلیک بر روی دکمه Browse مقابل جدول answers به بررسی آن خواهیم پرداخت. محتویات این جدول در ابتدای کار به صورت زیر است:
جدول answers شامل 5 فیلد است. فیلد ID در این جدول شناسه هر پاسخ بوده و کلید اصلی جدول می باشد. این فیلد ، یک فیلد با قابلیت افزایش خودکار ( auto increcement ) است که به ازای اضافه شدن هر رکورد، خودکار یک واحد افزایش می یابد.
همچنین این جدول دارای فیلد QID است که در جدول tblQuestions نیز وجود داشت و شناسه هر سوال را نگهداری می کند. فیلد QID در جدول answers کلید خارجی بوده و برای اتصال به جدول tblQuestions مورد استفاده قرار می گیرد.
فیلدهای A , B و C نیز به ترتیب تعداد رای های هر گزینه سوال را نگهداری می کنند.
با دریافت « مشاوره برنامهنویسی، وب و سئو » از کارشناسان جوان حرفهای و باتجربه ساکوراد؛ موفقیت کسب و کار، رونق فروش و افزایش درآمد خود را تضمین کنید!
و اما کلام آخر…
با این مراحل، شما یک فرم نظرسنجی در PHP و MySQL خواهید داشت که میتوانید آن را گسترش دهید و ویژگیهای بیشتری به آن اضافه کنید.