PDA

View Full Version : سوال: مشکل در استفاده از datalist در فروشگاه اینترنتی



jamali_yosef
جمعه 16 دی 1390, 18:26 عصر
سلام دوستان عزیز خسته نباشید

من تو پروژه ام به یه مشکل برخورده ام و اون اینکه:

من برای نمایش محصولاتم از datalist استفاده کردم که اطلاعات رو از db میخونه و تو datalist نشون میده یه linkbotton تو itemtemplet گذاشتم و اسمشو گذاشتم "اضافه کردن به سبد خرید" حالا میخوام وقتی کاربر رو دکمه اضافه کردن به ... کلیک میکنه (مثلا بر روی سه تا محصول کلیک میکنه) چطوری id این سه محصول رو به صفحه بعد یکجا پاس کنم.خیلی متشکرم

mohsen.nsb44
شنبه 17 دی 1390, 09:40 صبح
سلام دوستان عزیز خسته نباشید

من تو پروژه ام به یه مشکل برخورده ام و اون اینکه:

من برای نمایش محصولاتم از datalist استفاده کردم که اطلاعات رو از db میخونه و تو datalist نشون میده یه linkbotton تو itemtemplet گذاشتم و اسمشو گذاشتم "اضافه کردن به سبد خرید" حالا میخوام وقتی کاربر رو دکمه اضافه کردن به ... کلیک میکنه (مثلا بر روی سه تا محصول کلیک میکنه) چطوری id این سه محصول رو به صفحه بعد یکجا پاس کنم.خیلی متشکرم
در قسمت postbak url شما میتونی ایدی محصول مورد نظرتو ارسال کنی
مثلا بنویسی

Eval("id","~/kharid.aspx?id={0}"}

hamid_shrk
شنبه 17 دی 1390, 09:48 صبح
سلام.
شما باید برای دکه اضافه به سبدتون این کد رو بنویسید


<asp:ImageButton ID="ImageButton1" runat="server" CommandArgument='<%# Eval("IdProduct") %>'
CommandName="AddToCart" ToolTip="اضافه به سبد" ImageUrl="~/Image/Icons/Add.png" />

حالا تو ItemCommand از دیتا لیستتون اینجوری چک کنید :

switch (e.CommandName)
{
case "AddToCart":
{
string IdProduct = e.CommandArgument.ToString();
break;
}
}

jamali_yosef
سه شنبه 20 دی 1390, 17:31 عصر
سلام دوست عزیز
ممنونم که جوابم رو دادید در واقع من id محصولات انتخابی رو بدست میارم(مثلا طرف محصولات 3و4و5) رو انتخاب کرده من نمیخوام هر بار کاربر محصول روانتخاب میکنه به صفحه سبد خرید منتقل شه میخوام وقتی کاربر انتخابش تموم شد تو دکمه "مشاهده سبد خرید " کلیک کنه و اون سه محصول انتخابی رو تو سبد خرید اون نشون بده.

meisam3322
سه شنبه 20 دی 1390, 19:24 عصر
اینو ببین :




protected void DataList1_ItemCommand(object sender, System.Web.UI.WebControls.DataListCommandEventArgs e)
{

Label n, a, b, c, d, r;
if (e.CommandName == "del")
{

n = (Label)e.Item.FindControl("lblNote");
txtNote.Text = n.Text;
_Class.Delete_Exam("2", n.Text.ToString());
string h = "<script>alert('سوال مورد نظر با موفقیت حذف گردید');location.href='Admin_Part1.aspx" + "'</script>";
Response.Write(h);
DataList1.DataSource = SqlDataSource1;
DataList1.DataBind();
}

if (e.CommandName == "shw")
{

n = (Label)e.Item.FindControl("lblNote");
a = (Label)e.Item.FindControl("lbla");
b = (Label)e.Item.FindControl("lblb");
c = (Label)e.Item.FindControl("lblc");
d = (Label)e.Item.FindControl("lbld");
r = (Label)e.Item.FindControl("lblrep");



}





شما باید ابتدا برای لینک باتن در قسمت CommandName یه اسم میزاری ، بعد مثل مثال بالا که برات نوشتم انجام میدی .


من در مثال بالا دو تا imgeButton گذاشتم و commandname یکی shw و دیگری del هست. شرط رو هم کی متوجه میشی. حالا با findcontrol میام label یا هرچیزه دیگری رو در سطری که کاربر انتخاب کرده رو ، محتویاتشو میخونم.

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

موفق باشین

jamali_yosef
سه شنبه 20 دی 1390, 20:23 عصر
با سلام

دوست عزیز من مشکلی با تشخیص کالاهای انتخاب شده ندارم در واقع من id محصولاتی را که کاربر انتخاب کرده روه می تونم بدست بیارم مشکل من اینه که این idها رو کجا ذخیره کنم وقتی طرف به سبد خرید خود رفت بتونه اون محصولات رو تو سبد خرید خود مشاهده کنه(من میخوام بر فرض طرف 3 محصول رو انتخاب کرده مشخصات اون محصولات رو به او نشون بدم)

meisam3322
سه شنبه 20 دی 1390, 21:05 عصر
خوب دوست من خیلی راحته که ، یه table دیگه بزار که آی دی کالا و تعداد و قیمت فی و قیمت کل و نام کاربری و نگه داره. حالا میتونی با توجه به نام کاربری کالا ها رو بخونی و توی یه گرید یا لیست یا view نمایش بدی.

jamali_yosef
چهارشنبه 21 دی 1390, 00:54 صبح
سلام

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