Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > การเช็คและบวกเพิ่มจำนวนในตะกร้าสินค้าแบบ Session Array ในกรณีที่สินค้ากับออฟชั่นสินค้าตรงกับที่มีในตะกร้าสินค้าทำอย่างไรครับ



 

การเช็คและบวกเพิ่มจำนวนในตะกร้าสินค้าแบบ Session Array ในกรณีที่สินค้ากับออฟชั่นสินค้าตรงกับที่มีในตะกร้าสินค้าทำอย่างไรครับ

 



Topic : 112144



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์




พอดีผมไปเจอตัวอย่างเว็บร้านค้า แล้วมีการเก็บค่าสินค้าในตะกร้าเป็นแบบ Session Array แล้วมีปัญหาตรงที่ถ้าสั่งสินค้าตัวเดิม จำนวนสินค้าก็จะถูกทับไป ไม่ได้ + เพิ่มจากจำนวนเดิม เลยอยากสอบถามวิธีการ + เพิ่มจำนวนสินค้าครับ

หากต้องการเช็คสินค้ากับออฟชั่นว่าเคยมีในตะกร้าหรือยัง ถ้าหากมีแล้วให้ + จำนวนที่สั่งเพิ่มเข้าไป จะต้องทำอย่างไรครับ

insert_cart.php
<?php session_start();?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
//รับค่า
$id=$_REQUEST['id']; //รหัสสินค้า
$option=$_REQUEST['option']; //ขนาด/สีของสินค้า
$amount=$_REQUEST['amount']; //จำนวนที่สั่ง

//เชื่อมต่อฐานข้อมูล
include('connect.php');

$sql="SELECT product.id AS id, product.name AS name, product.price AS price, product.image AS image, product_option.id AS option_id, product_option.name AS `option` FROM product, product_option WHERE product.id=$id AND product_option.id=$option";
$result=mysql_query($sql)or die(mysql_error());
$row=mysql_fetch_array($result);

if(!isset($_SESSION['cart'])){$_SESSION['cart']=array();}	
$_SESSION['cart'][$option]=array('id'=>$row['id'], 'name'=>$row['name'], 'image'=>$row['image'], 'price'=>$row['price'], 'option'=>$row['option']  ,'amount'=>$amount);

echo"<script>window.location='../cart.php';</script>";

?>

</body>
</html>




Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-10-25 10:49:06 By : pengbuts View : 1691 Reply : 9
 

 

No. 1



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าเป็นผมมจะ เก็บ แบบนี้

Code (PHP)
if(!isset($_SESSION['cart'][$id][$option])){  
$_SESSION['cart'][$id][$option][amount]+=$amount;
}else{
$sql="SELECT product.id AS id, product.name AS name, product.price AS price, product.image AS image, product_option.id AS option_id, product_option.name AS `option` FROM product, product_option WHERE product.id=$id AND product_option.id=$option";
$result=mysql_query($sql)or die(mysql_error());
$row=mysql_fetch_array($result);
$_SESSION['cart'][$id][$option]=array( 'name'=>$row['name'], 'image'=>$row['image'], 'price'=>$row['price'], 'option'=>$row['option']  ,'amount'=>$amount);
}









ประวัติการแก้ไข
2014-10-25 12:07:49
2014-10-25 12:08:42
2014-10-25 12:08:56
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-25 12:07:18 By : gaowteen
 


 

No. 2



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ขอลองดูก่อนนะครับ นำไปใช้กับของเดิมจะมีปัญหาอะไรไหม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-25 17:27:20 By : pengbuts
 

 

No. 3



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


อันนี้ส่วนของตะกร้าผม ลองคลิกซื้อแล้ว ค่ามันไม่ส่งมาอะครับ ต้องแก้ตรงไหนบ้างครับ

Code (PHP)
<?php 
if(!empty($_SESSION['cart'])){$cart=$_SESSION['cart'];
  if(sizeof($cart)>0){ 
?>
<form action="process/cart_update.php" method="post">
<table class="list" width="100%" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#e5e5e5">
  <tr>
    <th width="40" align="center" bgcolor="#fafafa">ลบ</th>
    <th width="100" align="center" bgcolor="#fafafa">ภาพสินค้า</th>
    <th align="center" bgcolor="#fafafa">รายการสินค้า</th>
    <th width="65" align="center" bgcolor="#fafafa">ราคา</th>
    <th width="65" align="center" bgcolor="#fafafa">จำนวน</th>
    <th width="75" align="center" bgcolor="#fafafa">ราคารวม</th>
  </tr>
<? 
    $i=0; 
    $sum=0;
    $quantity=0;
    foreach($cart as $id=>$item){ 
?>
  <tr>
    <td align="center" bgcolor="#FFFFFF">
      <input class="form" type="checkbox" name="remove[]" value="<?=$id?>" />
    </td>
    <td align="center" bgcolor="#FFFFFF">
    <a href="product.php?product=<?php echo $item['id']?>" target="_blank"><img src="product/<?=$item['image']?>" width="90" border="0"/></a>
    </td>
    <td align="center" bgcolor="#FFFFFF"><?=$item['name']?><br/><?=$item['option']?></td>
    <td align="center" bgcolor="#FFFFFF"><?=number_format($item['price'])?></td>
    <td align="center" bgcolor="#FFFFFF">
      <a href="javascript:;"onclick="del('<?=$i+1?>')" style="display:block; margin-bottom:5px;"><img src="images/icon-minus.gif" border="0"/></a>
      <input class="form" style="width:20px; text-align:center;" name="amount[<?=$id?>]" type="text" id="<?=$i+1?>" value="<?=$item['amount']?>"/>
      <a href="javascript:;" onclick="plus('<?=$i+1?>')" style="display:block;margin-top:5px;"><img src="images/icon-plus.gif" border="0" /></a>
    </td>
    <td align="right" bgcolor="#FFFFFF"><?=number_format($item['price']*$item['amount'])?></td>
  </tr>
<? 	
    $sum+=$item['price']*$item['amount'];
    $quantity+=$item['amount'];
    $i++;
    }
?>
  <tr>
    <td colspan="5" align="right" style="background:#fafafa;">ราคารวม (บาท)</td>
    <td style="font-size:16px;background:#fafafa;" align="right"><?=number_format($sum)?></td>
  </tr>
</table>
</form>
<?php
  }
}
else{ 
?>
<div align="center" style="color:#999; font-size:13px;">
ไม่มีสินค้าในตะกร้า<br/>
<input name="button" type="button"  onclick="window.location='categories.php';" value="เลือกสินค้าต่อ" id="button_main"/></div>
<?php
} 
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-25 18:40:04 By : pengbuts
 


 

No. 4



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ช่วยชี้แนะด้วยครับๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-25 22:39:29 By : pengbuts
 


 

No. 5



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


เปลี่ยน typy buttomเปน submit แล้วเอา onclickออก เวลารับค่าอีกน้าอย่าลืมรับเปนpost ละ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-26 10:13:31 By : gaowteen
 


 

No. 6



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ตรงส่วนนั้นคือตะกร้าสินค้าครับ อันนี้คือส่วนหน้าเลือกสินค้า
Code (PHP)
<form action="process/cart_insert.php" method="post" >  
<span style="font-size:14px;">Color :</span>
<br />
<?
$sqlOption="SELECT * FROM product_option WHERE product_id=$_GET[product] AND name !='' ORDER BY id asc";
$resultOption=mysql_query($sqlOption)or die(mysql_error());
$numOption=mysql_num_rows($resultOption);
?>
<select name="option" style="width:200px; margin-top:3px;">
<?
for($i=1;$i<=$numOption;$i++){$rowOption=mysql_fetch_array($resultOption);
?>
<option value="<?=$rowOption['id']?>"><?=$rowOption['name']?></option>
<?
}
?>
</select>
<br />
<br />
<span style="font-size:14px;">Quantity :</span>
<div style="width:100px; text-align:center; margin-top:3px;">
<a href="javascript:;"onclick="del('<?=$i+1?>')" style="margin-bottom:5px;">
<img src="images/icon-minus.gif" border="0"/>
</a>
<input class="form" style="width:60px; text-align:center;" name="amount" type="text" id="<?=$i+1?>" value="1"/>
<a href="javascript:;" onclick="plus('<?=$i+1?>')" style="margin-top:5px;">
<img src="images/icon-plus.gif" border="0" />
</a>
</div>
<br />
<div id="main-price">
<div style="width:50px; float:left;">Price :</div>
<div style="width:400px; float:right; text-align:right;"><?=number_format($row['price'])?> ฿</div>
</div>
<input name="id" type="hidden" value="<?=$_GET['product']?>"/>
<input type="submit" value="เพิ่มลงตระกร้า / Add to Cart" id="cart_button"/>
</form>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-26 10:38:09 By : pengbuts
 


 

No. 7



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ใครช่วยอธิบายการเช็ค และ การ + เพิ่มไปได้ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-26 22:36:55 By : pengbuts
 


 

No. 8



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ดันๆๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-27 12:46:10 By : pengbuts
 


 

No. 9



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์


ดันๆๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-28 07:59:04 By : pengbuts
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การเช็คและบวกเพิ่มจำนวนในตะกร้าสินค้าแบบ Session Array ในกรณีที่สินค้ากับออฟชั่นสินค้าตรงกับที่มีในตะกร้าสินค้าทำอย่างไรครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่