PDA

View Full Version : سوال: ثبت سبد خرید در پایگاه داده



marya101000
جمعه 21 تیر 1392, 17:43 عصر
سلام دوستان من دارم برای پروژه دانشگاهم یک فروشگاه درست میکنم الان به مشکل برخوردم
ممنون میشم اگه کمکم کنید :افسرده:

دوستان من سبد خرید رو طراحی کردم و درست عمل میکنه و حالا میخوام این سبد خرید رو همراه با اطلاعات مشتری در پایگاه داده ذخیره کنم بچه ها کدهای css سبد خرید براتون گذاشتم حالا چطور این سبد خرید رو ذخیره کنم ؟؟؟




using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Microsoft.VisualBasic;
using System.Data.SqlClient;
using System.Collections.Generic;

namespace rayaneh.commerce
{
[Serializable]
public class CartItem
{
private string _isbn;
private string _title;
private string _picurl;
private int _quantity;
private int _price;
private int _linetotal;
public void New()
{
}
public void New(string isbn, string title, string picurl, int quantity, int price)
{
_isbn = isbn;
_title = title;
_picurl = picurl;
_quantity = quantity;
_price = price;
_linetotal = quantity + price;
}
//***********
public string isbn
{
get
{
return _isbn;
}
set
{
_isbn = value;
}
}
public string title
{
get
{
return _title;
}
set
{
_title = value;
}
}

public string picurl
{
get
{
return _picurl;
}
set
{
_picurl = value;
}
}

//************

public int quantity
{
get
{
return _quantity;
}
set
{
_quantity = value;
}
}

//***********
public int price
{
get
{
return _price;
}
set
{
_price = value;
}
}

//***********

public int linetotal
{
get
{
return _quantity * _price;
}
}
}
//************************************
[Serializable]

public class shoppingcart
{
private DateTime _dateCreated;
private DateTime _lastUpdate;
private List<CartItem> _items;

public shoppingcart()
{
if (this._items == null)
{
this._items = new List<CartItem>();
this._dateCreated = System.DateTime.Now;
}
}

//*********************

public List<CartItem> items
{
get
{
return _items;
}
set
{
_items = value;

}
}

//***************

public void insert(string isbn, int price, int quantity, string title, string picurl)
{
int itemindex = itemindexOfID(isbn);
if (itemindex == -1)
{

CartItem newitem = new CartItem();
newitem.isbn = isbn;
newitem.quantity = quantity;
newitem.price = price;
newitem.title = title;
newitem.picurl = picurl;
_items.Add(newitem);
}
else
_items[itemindex].quantity += 1;
_lastUpdate = DateTime.Now;
}

//************************

public void update(int RowID, string isbn, int quantity, int price)
{
CartItem item = _items[RowID];
item.isbn = isbn;
item.quantity = quantity;
item.price = price;
_lastUpdate = DateTime.Now;
}
//**************

public void deleteitem(int RowID)
{
_items.RemoveAt(RowID);
_lastUpdate = DateTime.Now;

}
private int itemindexOfID(string isbn)
{
int index = 0;
foreach (CartItem item in _items)
{
if (item.isbn == isbn)
return index;
index++;
}
return -1;
}
//***********

public int total
{
get
{
int t = 0;

if (_items == null)
return 0;

foreach (CartItem item in _items)
t += item.linetotal;
return t;
}
}
}
}

parvizwpf
جمعه 21 تیر 1392, 17:48 عصر
بهتره بجای نوشت این لیستی که استفاده کردید بیاید و همون کدهای ذخیره و حذف و ویرایش و حذف دیتابیس رو بنویسید. الان لیست اینجا چه کارس؟

marya101000
جمعه 21 تیر 1392, 17:59 عصر
بهتره بجای نوشت این لیستی که استفاده کردید بیاید و همون کدهای ذخیره و حذف و ویرایش و حذف دیتابیس رو بنویسید. الان لیست اینجا چه کارس؟

دوست خوبم این کدها برای درست کردن سبد خرید شما هر محصولی رو که روش کلیک میکنید به وسیله این کدها تو حافظه نگهداری میکن و هربار که مشتری بیاد
سبد خریدش وجود داره من سبد خریدم هیچ مشکلی نداره
مشکل من الان اینه که تو دیتا لیستم که چندین خرید مشتری است (سبدخرید) اینها رو چطور تو پایگاه داده ذخیره کنم
؟؟؟؟

marya101000
جمعه 21 تیر 1392, 18:16 عصر
میدونم سوال وقت گیریه ولی لطفا کمک کنید مهندسهااااااا

parvizwpf
جمعه 21 تیر 1392, 18:32 عصر
میدونم ولی برام جالبه چطور مقدار لیست رو توی وب نگه میدارید؟ از ajax استفاده میکنید؟ این الان برای جواب مهمه.

marya101000
جمعه 21 تیر 1392, 18:40 عصر
عزیزم بوسیله پروفایل اطلاعات ذخیره میشن اطلاعات تو وب کانفیگ ذخیره میشه اگه کاربر مرورگرشو ببنده دوباره بیاد سبد خریدش هست

ببین من این فیلدها رو در سبد خریدم دارم نام محصول ، تعداد خرید،هزینه محصول، هزینه کل حالا هر مشتری ممکن چیند تا خرید داشت باش مثلا یک مشتری 2 تا بازی رو بخره پس دو تا بازی در سبد خریدش هست حالا ما باید این دو تا بازی رو همراه با شناسه کاربر ذخیره کنیم که مدیر سایت بفهمه مشتری با چنین شناسه ای خریدی انجام کرده است
البته با زدن دکمه خرید به صفحه بعد باید بریم و در صفحه بعد اطلاعات مشتری مثل (نام و ادرس و .. ) بگیره و سبد خریدشو هم ذخیره کن

کمکککک لطفا :(

parvizwpf
جمعه 21 تیر 1392, 18:45 عصر
شما به من بگید کجا دیتایی که دارید میگیرید رو بهش دسترسی دارید؟ مثلا همین 10 تا چیزی که در سبد شما هست کجا تو کدنویسی بهش دسترسی دارید خب بیاید اونو با اطلاعاتی که الان از کاربر میگیرید یک جا ذخیره کنید.

marya101000
جمعه 21 تیر 1392, 22:04 عصر
شما به من بگید کجا دیتایی که دارید میگیرید رو بهش دسترسی دارید؟ مثلا همین 10 تا چیزی که در سبد شما هست کجا تو کدنویسی بهش دسترسی دارید خب بیاید اونو با اطلاعاتی که الان از کاربر میگیرید یک جا ذخیره کنید.


اطلاعات من توی دیتابیس Sql Express از اوجا میخونم، بعد اینکه مشتری اقلامشو انتخاب کرد نهایتا اقلام اضافه شده در سبد خرید به دیتالیست اضافه میشه

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

به این صورت که یک دکمه باش بعدش وقتی دکمه رو زدیم سبد خرید مشتری همراه با اطلاعات اولیه مشتری در پایگاه درج بشه
که مدیر سایت بتونه اونو ببین و محصول رو برای مشتری اماده کن

marya101000
جمعه 21 تیر 1392, 22:05 عصر
خانم و اقایان مهندس کجان یکی نیست مشکل منو حل کن همه قهر کردید با من :افسرده::گریه:

Progman.ir
جمعه 21 تیر 1392, 22:36 عصر
خانم و اقایان مهندس کجان یکی نیست مشکل منو حل کن همه قهر کردید با من :افسرده::گریه:

شما اول بگید مشکلتون از کجاس؟ الگوریتمیک مشکل دارید یا کدتون کار نمیکنه؟ خوب هر مشتری موقع ثبت شدن یه کد یونیک داره درسته؟ اون کد یونیک رو در همون رکوردی که هر کدوم از اجناس ذخیره میشن قرار بدید و اینطوری میگید این جنس با این شماره کد جنس ، مربوط به این مشتری با این کد مشتری میباشد.منظورتون رو واضح تر بگید

marya101000
جمعه 21 تیر 1392, 22:42 عصر
شما اول بگید مشکلتون از کجاس؟ الگوریتمیک مشکل دارید یا کدتون کار نمیکنه؟ خوب هر مشتری موقع ثبت شدن یه کد یونیک داره درسته؟ اون کد یونیک رو در همون رکوردی که هر کدوم از اجناس ذخیره میشن قرار بدید و اینطوری میگید این جنس با این شماره کد جنس ، مربوط به این مشتری با این کد مشتری میباشد.منظورتون رو واضح تر بگید


ببین دوستای عزیزم من با کلی درد سر سبد خرید رو درس کردم این هم کد های css سبد خریدم هست که گذاشتم حالا بلد نیستم چطور سبد خرید رو ذخیره کنم

در پایگاه داده

اگر امکانش هست بگید چطور سبد خریدمو ذخیره کنم (کدنویسشو نمیدونم ولی میدونم چی جدول هایی باید درس کنم که و چه اطلاعاتی باید ذخیره بش
ولی نمید ونم چطور اطلاعات داخل دیتالیست ذخیره کنم :(

مشکل از اینجا اغاز میشه که داخل دیتالیستمون چندین محصول هست وگرنه اگر یک محصول بود همون یک محصول به وصیله کد insert ذخیره میکردم

امیدوارم بتونم منظورمو گفته باشم :(((((((((0

marya101000
شنبه 22 تیر 1392, 10:40 صبح
یعنی اینجا کسی سایت درست نکرد مشکل سبد خرید رو بدونه


واقعا از این همه مهندس بعید
:عصبانی++:

as13851365
شنبه 22 تیر 1392, 11:16 صبح
یعنی اینجا کسی سایت درست نکرد مشکل سبد خرید رو بدونه


واقعا از این همه مهندس بعید
:عصبانی++:

دوست عزیز شما ...

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

مثلا یه جدول داریم که مشخصات کالاها رو توش نوشتیم (برای هر کالا یک ID در نظر گرفتیم )
حالا مشخصات کالاها(همراه ID) + قیمت و تعداد رو به کاربران نشون میدیم
کاربر هر کالایی که انتخاب کرد بر اساس ID کالا در سبد خریدش ثبت میکنی

سبد خرید هم یک جدول در نظر میگیری ( که به صورت آژاکس باشه ) توی این جدول ID کاربر +ID کالا + یک کد یکتا برای فاکتور + تعداد + قیمت رو ذخیره میکنی
کاربر هر کالایی که خواست رو انتخاب میکنه و در سبدش ذخیره میشه

هر شخصی سبد خریدی که طراحی می کنه شخصی هستش باز اگه جایی از حرفام مبهم بود بگو توضیح بدم فقط کلی نپرس

mahdioo12194
شنبه 22 تیر 1392, 13:14 عصر
سلام دوستان من هم در این زمینه مشکل داشتم و چند تا سوال

اولا در رابطه با پیاده سازی سبد خرید با ajax یک منبع خوب واسه یادگیری می خوام یا اگر دوستان کمک کنند ممنون می شم

دوما من سبد خرید را با سشن پیاده سازی کردم و ریختم درون دیتاتیبل حالا در ثبت نهایی چطور اطلاعات دیتاتیبل یا سشن را درون پایگاه داده ذخیره کنم؟

با تشکر

Alghoochi
یک شنبه 23 تیر 1392, 21:43 عصر
یعنی اینجا کسی سایت درست نکرد مشکل سبد خرید رو بدونه


واقعا از این همه مهندس بعید
:عصبانی++:

من الان مشکلتون رو دقیق نمی‌فهمم. فقط واسه‌ی ذخیره‌ی لیست خرید توی بانک اطلاعاتی مشکل دارید؟؟

iranolom
سه شنبه 01 مرداد 1392, 23:40 عصر
السلام
اگر فقط تئوریک و منطق کار رو بخواید اینه که :

یه جدول بالاخره برا ذخیره پروفایل و مشخصات کاربران باید وجود داشته باشه که کار نداریم چه اطلاعاتی رو ذخیره می کنید ولی در حداقل حالت برای هر کابر یک کد منحصر به فرد باید وجود داشته باشد این جدول رو بانام جدول (کاربران) در نظر بگیریدو اون کد رو نیر (کد کاربری)

یه جدول دیگه می خواید برای درج کلیه محصولاتتون که نام جدول رو (محصولات) می زاریم و جداقل دارای یه (کد محصول) به عنوان کلید جدول و همچنین (نام محصول) و دیگر مشخصاتی که دوست دارید رو ذخیره می کنید

تا اینجا ما یه لیست کاربران داریم و یه لیست محصولاتمون
این وسط حالا باید یه جدولی قرار بگیرد که ارتباط بین محصولات و کاربران را مشخص کند که کی چی ذخیره کرده >>> اگر وقت داشتم تصوصیری توضیح می دادم خیلی بهتر می شد ولی حیف که وقت برام نیست :افسرده:

در کل

هم اکنون اون جدول وسطی رو با نام (لیست محصولات کاربران) ایجا می کنیم هم اکنون دو روش وجود داره برای پیاده سازی از نظر من البته یه روش که سهل تره و همچنین عیر منطقی تر رو کار نداریم :لبخند: اما روش اول بدین ترتیبه :

جدوله رو ساخته و فیلدی با نام (کد کاربر) و (کد محصول) و همچنین مثلا برای خرید چندین عدد از یه محصول (تعداد) تعداد خریداری شده مثلا طرف از این محصول 4 عدد می خواد و همچنین اطلاعات ذخیره ای تکمیلی هم چون زمان ثبت یا اگر ثبت بانکی دارید کد پی گیری و این چیز ها رو هم طبق نیازتون ثبت کنید

در مورد بازیابی نیز کافیست که کد کاربری که لاگین کرده مثلا در سشن موجود می باشد را استخراج و سپس کلیه رکورد هایی که در جدول (لیست محصولات کاربران) وجود دارد که فیلد (کد کاربر) مساوی کدی که از سشن استخراج کرده ایم می باشد رو لیست کنیم و با استفاده از (کد محصولی) که یکی از فیلد های خروجیست نام محصول رو هم می تونید بازیابی کنید

این فقط الگوریتم کار بودش پیاده سازی شم بماند برای خود کابران ...:اشتباه:

amin750
چهارشنبه 13 شهریور 1392, 12:48 عصر
با این حساب که شما گفتین میتونیم از پیوند طبیعی هم استفاده کنیم که دیگه نیاز به جدول دیگه ایی هم نباشه!!