علیرضا فرهادی
2 سال پیش توسط علیرضا فرهادی مطرح شد
1 پاسخ

جلوگیری از ثبت آیتم های مشابه سبد خرید بصورت جداگانه

سلام دوستان وقتتون بخیر

من یک جدول برای انتخاب محصولات از دیتابیس دارم که محدودیتی سمت سرور برای شناسایی آیتم های مشابه وجود نداره.

به این صورت هست که آیدی محصولات انتخاب شده توسط کاربر در یک آرایه ارسال میشه و بر اساس ایدی محصول از دیتابیس خونده میشه و مشخصاتش به عنوان آیتم سفارش در دیتابیس در یک حلقه به تعداد محصولات انتخاب شده insert میشه.
مثلا در تصویر پایین ایدی محصول شماره 3 دوبار تکرار شده یعنی در سبد یک محصول دوبار انتخاب شده :
 تصویر

الان میخوام یک تابع بنویسم که آیدی های تکراری رو شناسایی کنه و آیتم های مشابه رو فقط یکبار ثبت کنه ولی تعدادشون رو باهم جمع کنه!

خیلی سرچ کردم نتونستم روش مناسبی براش پیدا کنم، ممنون میشم راهنمایی کنید.


ثبت پرسش جدید
Sahandi81
تخصص : PHP - Laravel -JS
@sahandi81 2 سال پیش مطرح شد
1

سلام
قبل از insert کردن داخل دیتابیس چک کن ببین همچین چیزی موجوده یا نه.
اگر موجود بود قبلی رو بگیر و به اضافه مقدار جدید کن.
برای ثبت تغییرات میتونی از متد updateOrCreate استفاده کنی که پارامتر اول ایدی کارت(سبد خرید) رو میدی همراه با ایدی محصول و موجودیشو بیشتر و یا کمتر میکنی.
در صورت عدم وجود سبد خرید در دیتابیس هم خودش خودکار میسازه ریکورد جدید رو.
ابهامی بود بگو با کد برات توضیح بدم


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام