مهدی
4 سال پیش توسط مهدی مطرح شد
22 پاسخ

سبد خرید در لاراول

با سلام. بهترین راه برای ساخت سبد خرید در لاراول 7 چیه؟آیا پکیج خوبی برای این کار هست اگه نیست بهتر با سشن ساخته بشه یا کش یا اصلا دیتا ها تو دیتابیس ذخیره بشند؟


ثبت پرسش جدید
coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

سلام، واسه سبد خرید به نظر من دیتای اونقدر مهمی نیست که بخواین توی دیتابیس ذخیره کنید، توی کوکی کاربر ذخیره کنید، اگه به مرحله سفارش رفت که رفت نرفت باری رو دوش شما نمیذاره

این سایت توی سشن ذخیره کرده
https://webmobtuts.com/backend-development/creating-a-shopping-cart-with-laravel/

شما همونو تغییر بدین به کوکی


میلاد هدایت پور
تخصص : در حال پیشرفت
@miladparsi1070 4 سال پیش مطرح شد
0

@coaradsupp
بهتر نیست برای پیاده سازی سبد یه جدول براش درست کنیم و آیدی هر کالا با یوزر مربوط بهش رو اونجا ذخیره کنیم به جای اینکه تو سشن ذخیره کنیم؟؟
مشکلی داره این راه ؟


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
2

@miladparsi1070

سلام، نه مشکلی نداره، این سبد خرید یه بحث سلیقه ایه، از نظر من چون چیز خیلی خاصی نداره مشکلی توی ذخیره شدن توی کوکی یاسشن نداره، اگه کاربر واقعا بخواد بخره که ادامه میده و از کوکیش حذف میشه، نخواد سری بعد هم که بیاد هست و میتونه توی سبد خرید ادامه خرید بزنه، ان چنان مورد حساسی نیس به نظر من، شاید اشتباه بگم دوستان کمک کنن


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
1

@miladparsi1070
درود...
نیازی نیست اطلاعات سبد خرید رو ذخیره کنید و چون به کار نمیاد ...
همین طور که دوستان گفتند از روش کوکی یا سشن استفاده کنید بهتر از روش ذخیره دیتا است ...


میلاد هدایت پور
تخصص : در حال پیشرفت
@miladparsi1070 4 سال پیش آپدیت شد
0

@endworld
سلام
خب سشن استفاده کنیم مرورگر بسته شه از بین نمیره مگه؟ اگه بخوایم بمونه تو سبدش چیکار کنیم؟


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

@miladparsi1070

به نظر من که کوکی خوبه، با بسته شدن مرورگر هم از بین نمیره مگه خود کاربر کوکی هاشو پاک کنه


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
0

@miladparsi1070
به طور پیش فرض مدت زمان سشن حدودا 30 دقیقه هست ...
استفاده از کوکی خوبه و می توانید زمان آن افزایش بدید و اطلاعات کاربر در مرورگر ماندگار میشه.
در آخر می توانید در کوکی زمان انقضای آن تعریف کنید و که بعد از تمام شدن زمان اطلاعات کاربر در مرورگر حذف بشه...


میلاد هدایت پور
تخصص : در حال پیشرفت
@miladparsi1070 4 سال پیش مطرح شد
0

@endworld
اره اینطوری بهتره
مرسی از راهنماییتون


صدرا حکیم
تخصص : توسعه دهنده لاراول
@sadrahkm 4 سال پیش آپدیت شد
0

@coaradsupp @endworld
سلام
حالا یه سوالی که پیش میاد اینه که اگر کاربر کوکی های مرورگرش رو غیرفعال کرده باشه چی ؟! در اینصورت اصلا نمیتونه چیزی به سبد خریدش اضافه کنه چون با کوکی اضافه میشه و اون هم کوکی ها رو غیرفعال کرده
فکر کنم سشن انتخاب مناسب تری باشه چون سمت سرور ذخیره میشه و مطمئن هستیم که برای همه کاربر ها این راه جواب میده
یا اگر هم بخوایم سبد خرید بعد از بسته شدن مرورگر باقی بمونه، فکر کنم گزینه دیتابیس، راه مطمئن تری باشه
خوشحال میشم نظرات شما رو هم بشنوم :)


محمد امیری
تخصص : backend coder
@mohammadeng3731 4 سال پیش مطرح شد
0

سلام.
اگه با لاراول کار میکنید از سشن استفاده کنید و داخل config/session.php و گزینه expire_on_close رو false قرار بدید تا با بسته شدن مرورگر سشن حذف نشه.


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش مطرح شد
0

@sadrahkm

سلام، به خوب نکته ای اشاره کردید
به نظرم میشه کلاسی واسه ذخیره سبد خرید درست کرد که یا نمونه ای از کلاس کوکی یانمونه ای از کلاس سشن رو دریافت کنه، و چک کنیم که اگه کوکی فعال بود، کوکی پاس داده بشه

با این کد میشه چک کرد کوکی فعال هست یا خیر

Check if Cookies are Enabled
The following example creates a small script that checks whether cookies are enabled. First, try to create a test cookie with the setcookie() function, then count the $_COOKIE array variable:

Example
<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
  echo "Cookies are enabled.";
} else {
  echo "Cookies are disabled.";
}
?>

</body>
</html>

یا مثل سایت های دیگه که واردش میشین ازتون درخواست استفاده از کوکی رو دارن
https://gist.github.com/steveosoule/5679949
به کاربر گفته بشه فعال کنه

یا اگه هم دردسر زیاد نخوایم بکشیم توی همون سشن ذخیره کنیم، به هر حال سلیقه ایه


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
0

@sadrahkm
شما یه روش می تونید این کارو انجام بدید...
اگر کاربری کوکی رو غیر فعال کرده, یه پیام در وبسایت نمایش میده و به کاربر اطلاع میده کوکی مرورگر رو فعال کنید و اگه اگر بخواهد خریدی انجام دهد...
استفاده از سشن بهتر از کوکی هستش و دردسری نداره...


ali7rangoo
تخصص : html,css,js,php,mysql,laravel
@ali7rangoo 4 سال پیش مطرح شد
0

@endworld یه سوال شما گفتی استفاده از سشن بهتره
خوب به نظرتون سشن به چه روشی ذخیره بشه برا سبد خرید بهتره؟(database , file یا ...)
چون مهمه اطلاعات بمونه حداقل ۱ ماه


Alighanavati
@Alighanavati6827 4 سال پیش مطرح شد
-6

جالبه دوستانی که به من میگفتن تو برنامه نویس خوبی نبودی بخاطر همین برنامه نویسی رو ترک کردی الان یه راهنمایی درست هم نمیتونن بکنن !
استارتر عزیز
شما باید توی دیتابیس ذخیره کنید چون ممکنه بعدن نسخه اندروید یا ios فروشگاه هم بخواید بسازید


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
0

@ali7rangoo
درود...
می توانید سشن ها در دیتابیس ذخیره کنید و فرقی نمی کنه...
پیوند زیر:
https://jobteam.ir/ProductUser/110-Laravel-Session


سید حسین رضوی
تخصص : برنامه نویس وب و طراح رابط کار...
@hossein.r.1442 4 سال پیش مطرح شد
0

من از این پکیج استفاده کردم خیلی خوب کامو راه انداخت
https://github.com/Crinsane/LaravelShoppingcart


مرتضی رحمانی
تخصص : توسعه دهنده وب
@mortezarahmani 4 سال پیش مطرح شد
0

یک راه خیلی خوب دیگه ای هم که هست اینه که شما دیتای مربوط به سبد خرید رو در دیتابیس داخل جدولی ذخیره کنید.
بعد میتونید یه command تعریف کنید که دیتای سبد خرید کاربرانی که 30 روزه به سبد خریدشون دست نزدن پاکسازی بشه.
بعد از اون، از طریق scheduler اون کامند رو روزانه یک بار ران کنید اینطوری هم دیتای مربوط به سبد سنگین نمیشه، هم نیاز به کوکی و سشن و این دردسر ها نیست...

صرفا یک ایده هست حالا میل خودتون 😉


Amin
@aminhejazi13781378 4 سال پیش مطرح شد
0

@hossein.r.1442
این پکیج برای لاراول 7 به بعد جواب نمیده انگار!!


افشین داداش نژاد
تخصص : لاراول(Laravel)
@afshin.dadashnezhad 4 سال پیش مطرح شد
0

@mahdiam200
سلام به نظر من با دیتابیس پیاده سازی کنید ِیکی از دلایلی که برا اینکار دارم این هست که کاربر شاید با کامپیوتر سبد خرید رو پر کنه و بخواد ادامشو با تلفن همراهش پیش بره این جوری سبد خریدش تو هر دو یکی هست و پیشنهاد میکنم از service ها حتما استفاده کنید برای سبد خرید که بعدا توسعه پذیریش راحت تر بشه براتون


fgh
تخصص : توسعه دهنده لاراول
@fgh 3 سال پیش مطرح شد
0

ببین دوست من بهترین کار اینه اگه استفاده میکنی از کوکی استفاده کنی سشن هم میشه ولی عموما از کوکی استفاده میکنن اگه مثلا خواستی چیزی مثل دیجی کالا رو پیاده کنی که مثلا کاربر یک ماه پیش فلان فلان محصولات رو وارد سبد خریدش کرده ولی به بخش خرید نرفته و میخوای بمونه یه جدول واسط برای کاربر و سبد خرید ایجاد کن که توی دیتا بیس ثبت بشه برای اینکه فشاری ام بهش نیاد تایم بزاری مثلا برای بعد از دو هفته پاک بشه این جدول ولی لازم نیست به نظر من مثل دیجی کالا پیاده بشه و بپیچونیش بدون جدول پیادش کن با کوکی فقط روابط رو بین جداول order و products ایجاد کن حله توی دوره پروژه محور حسام خوب تشریح کرده


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

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