PDA

View Full Version : سوال: ایجاد جدول با فیلد متغیر؟



esteftaats
دوشنبه 01 اردیبهشت 1393, 00:18 صبح
سلام دوستان
من دارم یه سایت نظرسنجی می نویسم اما مشکلی که هست اینه که هر نظرسنجی ممکنه تعداد گزینه هاش با نظرسنجی دیگه فرق کنه و اینجوری معلوم نیست واسه اون نظرسنجی چند تا فیلد باید ساخته بشه.

به نظرتون این جا باید چکار کرد؟

اصلا میشه تعداد فیلدها رو متغیر کرد یا حتما باید ثابت باشه؟

تشکر

zandkarimi
دوشنبه 01 اردیبهشت 1393, 00:39 صبح
دوست عزیز از dom استفاده کن

esteftaats
دوشنبه 01 اردیبهشت 1393, 01:25 صبح
دوست عزیز از dom استفاده کن

تشکر دوست عزیز ولی میشه بیشتر توضیح بدین؟

یه سرچی زدم ولی به نظر یه نوع parser میاد !

tux-world
دوشنبه 01 اردیبهشت 1393, 07:01 صبح
خوب ببینید شما میتونین تو راحت ترین کار حداکثر رو در نظر بگیرید. مثلا بگید این نظر سنجی ها حداکثر ممکنه بیست تا باشن.
خالی بودن مهم نیست چون نمایش نمیدین ولی تو ثبت دیگه مشکلی ندارید. و به تعداد ذخیره شده فیلدهای دیتابیس رو میخونین و چاپ میکنید. در واقع برای هر نظر سنجی یه شناسه خاص تعریف میشه و از دیتابیس مدیریت میشه.

MMSHFE
دوشنبه 01 اردیبهشت 1393, 16:20 عصر
راه بهتر، ارتباط یک به چند هست (درمورد اصول نرمالسازی دیتابیس تحقیق کنید). به این ترتیب که یک جدول دارین به اسم polls و یک جدول هم دارین به اسم poll_items که ازطریق فیلد poll_id به رکورد مربوطه در جدول polls وصل میشه. اینطوری میتونید هر تعداد رکورد به جدول poll_items اضافه کنید و فیلدهاش هم دست خودتونه (مثلاً علاوه بر متن، تعداد رأی ها رو هم ذخیره کنید). حتی اگه بخواین بدونید چه کسانی به یک گزینه رأی دادن میتونید یک جدول دیگه به اسم votes هم اضافه کنید که ازطریق فیلد item_id به گزینه موردنظر و ازطریق فیلد user_id به کاربر مربوطه وصل بشه و با تبدیل همزمان هر دو تا فیلد به کلید اصلی، نگذارین یک کاربر بیش از یکبار به یک گزینه رأی بده. به این نوع ارتباط دو جدول ازطریق جدول واسط هم میگن ارتباط چند به چند.

esteftaats
دوشنبه 01 اردیبهشت 1393, 19:04 عصر
راه بهتر، ارتباط یک به چند هست (درمورد اصول نرمالسازی دیتابیس تحقیق کنید). به این ترتیب که یک جدول دارین به اسم polls و یک جدول هم دارین به اسم poll_items که ازطریق فیلد poll_id به رکورد مربوطه در جدول polls وصل میشه. اینطوری میتونید هر تعداد رکورد به جدول poll_items اضافه کنید و فیلدهاش هم دست خودتونه (مثلاً علاوه بر متن، تعداد رأی ها رو هم ذخیره کنید). حتی اگه بخواین بدونید چه کسانی به یک گزینه رأی دادن میتونید یک جدول دیگه به اسم votes هم اضافه کنید که ازطریق فیلد item_id به گزینه موردنظر و ازطریق فیلد user_id به کاربر مربوطه وصل بشه و با تبدیل همزمان هر دو تا فیلد به کلید اصلی، نگذارین یک کاربر بیش از یکبار به یک گزینه رأی بده. به این نوع ارتباط دو جدول ازطریق جدول واسط هم میگن ارتباط چند به چند.
یعنی فقط یه برنامه نویس حرفه ای می تونه چنین مسئله ای رو اینجوری حل کنه:تشویق:

خیلی حرفه ای بود.

sherlock0111
دوشنبه 01 اردیبهشت 1393, 20:30 عصر
دووست عزیز یه سری به این ادرس بزن؟!
http://www.ncis.ir/articles/62/%D8%B3%D8%A7%D8%AE%D8%AA%20%D8%B3%D8%A7%DB%8C%D8%A A%20%D9%86%D8%B8%D8%B1%D8%B3%D9%86%D8%AC%DB%8C%20% D8%A8%D8%A7%20PHP