+1 امتیاز
قبل در برنامه نویسی توسط (65 امتیاز)
ویرایش شده قبل توسط

سلام

توی سایتی قصد دارم بخشی رو به عنوان سفارش محصول ایجاد کنم که افزودن محصولات به صورت داینامیک باشه برای مثال به یک select box محصول اضافه کنم خب این کار رو تا حالا انجام دادم

<select> 
    <option>select an item</option> 
    <?php 
$get_card = mysql_query("SELECT cardname FROM selectbox") or die(mysql_error($con)); 
$rows = mysql_num_rows($get_card); 
if ($rows > 0) { 
      
    while ($data = mysql_fetch_array($get_card)) { 
        echo "<option>" . $data["cardname"] . "</option>"; 
    } 
} else { 
    echo 'Sorry,There is no any card'; 
} 
?> 
</select>

تا اینجا مشکلی نیست
حالا باید توی قسمت مدیریت برای هر کدام از گزینه های select box یا radio یا ... زیر مجموعه تعریف کرد و برای زیر مجموعه هم زیر مجموعه دیگری و به همین منوال

و در آخر هزینه سفارش رو محاسبه کنه یعنی عملیات * / + - رو انجام بده

چون سایت مورد نظر هر روز باید محصول کم و یا زیاد کنه به چنین چیزی نیاز داره

به نظرتون باید چجوری نوشته بشه ؟
کلاس آماده ای در این زمینه موجود هست ؟

با تشکر

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)

بنظر من اگر این سطح بندی محصولات می خواهد تا بینهایت سطح ادامه داشته باشد، ساختار درختی برای ذخیره سازی و نمایش آن مناسب است.

در دیتابیس، جدول محصولات باید یک ستون self reference به خودش داشته باشه با نام parentId که مشخص کننده محصول پدر هر محصول است. برای محصولاتی که در سطح اول درخت قرار می گیرند مقدار ستون parentId برابر null باشد.

برای نمایش tree هم در jquery کامپوننت های tree زیادی وجود دارد.

قبل توسط (65 امتیاز)
راستش الان بحث اصلی ساختار دیتابیس هستش که چطوری دسته ها و زیر دسته ها رو ایجاد کنم
چند تا جدول بسازم و برای هر جدول چند فیلد داشته باشم و ارتباطشون چطوری باشه
قبل توسط (1.1هزار امتیاز)
+1
درباره ساختار جدول توضیح دادم.
قبل توسط (65 امتیاز)
الان من یک جدول دارم برای محصولات که داخلش محصول اصلی قرار میگیره و یک آیدی منحصر به فرد هم داره خب تا اینجا مشکلی نیست
الان باید برای محصول زیر مجموعه ای تعریف کنم که برای مثال 4 تا radio یا check داشته باشه و با انتخاب برای مثال یکی از رادیو ها یک زیر مجموعه دیگه و زیر مجموعه های دیگر
خب این زیر مجموعه ها که پیاپی هستند کجا ذخیره بشن ؟
قبل توسط (1.1هزار امتیاز)
متن جواب رو با دقت بخونید. باید یک کلید خارجی با نام parentId درون جدول محصولات تعریف کنید که به کلید اصلی همون جدول وصله. زیر مجموعه ها هم در همون جدول ذخیره می شوند ولی parentId آنها برابر کلید منحصر بفرد محصول پدر قرار می گیرد.
قبل توسط (65 امتیاز)
ویرایش شده قبل توسط
ممنون از پاسخگوشی شما
ولی بنده یک مشکل اساسی دارم
مگر میشود کلید خارجی رو در همان جدول اصلی استفاده کرد ؟ آخه تا جایی که میدونم کلید خارجی همون کلید اصلی جدول اول است که در جدول دوم استفاده شده است
ممنون میشم اگر کد این بخش رو اسم بنویسید چون بنده علاوه بر نفهمیدن این مسئله با relation هم مشکل دارم
بازم ممنون از راهنماییتون
قبل توسط (1.1هزار امتیاز)
بله امکانش هست.

سوالات مشابه

0 امتیاز
0 پاسخ 1.3هزار بازدید
+1 امتیاز
1 پاسخ 476 بازدید
0 امتیاز
0 پاسخ 225 بازدید
0 امتیاز
0 پاسخ 656 بازدید
0 امتیاز
1 پاسخ 2.5هزار بازدید
0 امتیاز
0 پاسخ 734 بازدید
+1 امتیاز
1 پاسخ 3.3هزار بازدید
+2 امتیاز
5 پاسخ 2.3هزار بازدید
0 امتیاز
0 پاسخ 503 بازدید
0 امتیاز
1 پاسخ 1.2هزار بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط Hengame Parsa (0 امتیاز)
...