PDA

View Full Version : سوال: ایجاد سبدخرید با استفاده ازphp



SONITAJ
پنج شنبه 29 فروردین 1392, 23:26 عصر
سلام
من یک فرم سفارش محصول توی وبم دارم که میخواهم به یک سبد خرید الکترونیکی اضافه اش کنم ولی نمیدونم چطوری؟ منظورم این است که میخواهم توی همان صفحه زمانی که مشتری محصول را دید وانتخابش کرد بتواند توی همان صفحه محصول موردنظر را به سبد خرید اضافه کند وقیمتش را محاسبه کنه. و بصورت مرحله به مرحله باشه یعنی اول اضافه کردن محصول به سبد خرید-> محاسبه قیمت -> تکمیل مشخصات مشتری در فرم سفارش ->تایید وثبت نهایی -> دادن یک کد به مشتری (کدرهگیری) برای پیگیری محصول ومشخصات پر شده توی فرم بوسیله مشتری برای پرینت گرفتن
ولی نمیدونم چطوری وبه چه طریق این کار را انجام بدهم.:متفکر:
از اساتید محترم خواهش می کنم راهنماییم کنند.
ممنونم

nsco_nsco
جمعه 30 فروردین 1392, 00:43 صبح
سلام دوست من اول باید برای این کار با سیشن ها و متد پست و این طور چیزها اشنا بشی تا بفهمی چطور این کار را انجام بدی موفق باشید

phpeproject.ir
جمعه 30 فروردین 1392, 00:45 صبح
باید از سیشن جکوری و ajax استفاده کنید

MostafaEs3
جمعه 30 فروردین 1392, 02:00 صبح
سلام
من یک فرم سفارش محصول توی وبم دارم که میخواهم به یک سبد خرید الکترونیکی اضافه اش کنم ولی نمیدونم چطوری؟ منظورم این است که میخواهم توی همان صفحه زمانی که مشتری محصول را دید وانتخابش کرد بتواند توی همان صفحه محصول موردنظر را به سبد خرید اضافه کند وقیمتش را محاسبه کنه. و بصورت مرحله به مرحله باشه یعنی اول اضافه کردن محصول به سبد خرید-> محاسبه قیمت -> تکمیل مشخصات مشتری در فرم سفارش ->تایید وثبت نهایی -> دادن یک کد به مشتری (کدرهگیری) برای پیگیری محصول ومشخصات پر شده توی فرم بوسیله مشتری برای پرینت گرفتن
ولی نمیدونم چطوری وبه چه طریق این کار را انجام بدهم.:متفکر:
از اساتید محترم خواهش می کنم راهنماییم کنند.
ممنونم

معمولا کلاسهای سبد خرید بر اساس ID محصول و ذخیره اونها در Session کار میکنند . البته برای اینکار لازم هست که مدت زمان نگه داشتن Session توی سرور رو افزایش بدید . به مثال زیر دقت کنید ::

$_SESSION['cart'][124] = (12);
مثلا در اینجا ما محصول شماره 124 رو به تعداد 12 تا به سبد خرید اضافه کردیم . یک آرایه اصلی مثلا به اسم cart در Session ، و مقادیر آرایه ، ID های محصولات هستن . بعد شما میتونید برای گرفتن قیمت هرکدوم از محصولات از یک کوئری اصلی استفاده کنید که با استفاده از یک foreach عمل کنه

برای حذف یک محصول از سبد خرید هم کافیه اون کلید رو Unset کنید . مثلا ::

unset($_SESSION['cart'][124]);
------------------------
برای شروع سشن بهتره از این کد استفاده کنید که پیکربندی لازم رو انجام میده ::


if (!session_id()) {
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');

session_set_cookie_params(0, '/');
session_start();
}

SONITAJ
جمعه 30 فروردین 1392, 11:29 صبح
اگر بخواهم از فناوري ajax استفاده كنم چي؟چطوري؟

mohsen_31369
جمعه 30 فروردین 1392, 11:30 صبح
من قبلا یه کلاسی برای کار با سبد خرید نوشتم که می تونی اینجا (http://barnamenevis.org/showthread.php?378000-%DA%A9%D9%84%D8%A7%D8%B3-%D9%87%D8%A7%DB%8C-%D9%85%D9%81%DB%8C%D8%AF-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%BE%DB%8C-%D8%A7%DA%86-%D9%BE%DB%8C&p=1672710&viewfull=1#post1672710)ببینی.

MostafaEs3
جمعه 30 فروردین 1392, 12:57 عصر
اگر بخواهم از فناوري ajax استفاده كنم چي؟چطوري؟

بازهم کار زیادی ندارید . معمولا از Ajax بطور مستقیم استفاده نمیکنن چون گاهی اوقات با مرورگر هایی مثل Internet-Explorer خیلی خوب جواب نمیده . اکثرا از Jquery استفاده میکنن که متد های زیادی برای ارسال درخواست بصورت Ajax داره

فهرست متد های Ajax + توضیحاتشون در اینجا ببینید :: http://w3schools.com/jquery/jquery_ref_ajax.asp
--------------------------
بزارید یک مثال با متد ajax بزنیم ::

$.ajax({
type: 'POST',
url: 'cart.php',
data: {product_id: 124, count: 2},
error: function(data) { alert('Error:'+data); },
success: function (result) {
if (result=='success') {
alert('محصول با موفقیت به سبد خرید اضافه شد');
}
}
});

در اینجا اطلاعات بوسیله Ajax به سرور Post میشن و اگر متن بازگشتی مساوی با success باشه یک پیام موفقیت نمایش داده میشه . گاهی پارامتر دیگری رو برای استفاده از json قرار میدن که باعث میشه بتونید چندین مقدار رو بصورت json برگردونید و (تقریبا) مشابه آرایه ازش استفاده کنید