|
![](/images/resource/spacer.gif) |
|
สอบถามปัญหา เรื่องตะกร้าสินค้าครับ โดยผมเก็บsession ทั้ง รหัส ไซต์ สี ครับ |
|
![](/images/resource/viewboard_01.gif?v=1001) |
|
|
![](/images/resource/viewboard_03.gif?v=1001) |
![](/images/resource/viewboard_04.gif?v=1001) |
|
08.$_SESSION["intLine"] = 0;
09.$_SESSION["strProductID"][0] = $_POST["txtProductID"];
10.$_SESSION["strProductSize"][0] = $_POST["txtProductSize"];
11.$_SESSION["strQty"][0] = $_POST["txtQty"];
12.$_SESSION["strProductColor"][0] = $_POST["txtProductColor"];
แก้เป็น
Code (PHP)
$_SESSION["intLine"] = 0;
$_SESSION["strProductID"] = array( $_POST["txtProductID"] );
$_SESSION["strProductSize"] = array( $_POST["txtProductSize"] );
$_SESSION["strQty"] = array( $_POST["txtQty"] );
$_SESSION["strProductColor"] = array( $_POST["txtProductColor"] );
เพื่อเป็นการเคลียร array เก่าทั้งหมดให้เหลือแค่ element เดียว แม้จะมีบันทัด 8 กำหนดอยู่ก็ตาม
================================================================
19.$key = array_search($_POST["txtProductID"], $_SESSION["strProductID"]);
20.$key = array_search($_POST["txtProductSize"], $_SESSION["strProductSize"]);
21.$key = array_search($_POST["txtProductColor"], $_SESSION["strProductColor"]);
แก้เป็น
Code (PHP)
$key1 = array_search($_POST["txtProductID"], $_SESSION["strProductID"]);
$key2 = array_search($_POST["txtProductSize"], $_SESSION["strProductSize"]);
$key3 = array_search($_POST["txtProductColor"], $_SESSION["strProductColor"]);
$key = "$key1_$key2_$key3";
จำเป็นต้องกำหนดต่างตัวแปร เพราะค่าที่ได้มันต่างกัน แล้วนำมากำหนดเป็นคีย์ เพื่อกำหนดบันทัด ต่างกัน
|
ประวัติการแก้ไข 2015-09-24 08:59:47
![](/images/resource/blockviewtopic_01.gif?v=1001) |
![](/images/resource/blockviewtopic_02.gif?v=1001) |
![](/images/resource/blockviewtopic_03.gif?v=1001) |
![](/images/resource/blockviewtopic_04.gif?v=1001) |
Date :
2015-09-24 08:59:06 |
By :
NewbiePHP |
|
![](/images/resource/blockviewtopic_06.gif?v=1001) |
![](/images/resource/blockviewtopic_07.gif?v=1001) |
![](/images/resource/blockviewtopic_08.gif?v=1001) |
![](/images/resource/blockviewtopic_09.gif?v=1001) |
|
|
![](/images/resource/viewboard_06.gif?v=1001) |
![](/images/resource/viewboard_07.gif?v=1001) |
|
![](/images/resource/viewboard_08.jpg?v=1001) |
![](/images/resource/viewboard_09.gif?v=1001) |
![](/images/resource/viewboard_01.gif?v=1001) |
|
|
![](/images/resource/viewboard_03.gif?v=1001) |
![](/images/resource/viewboard_04.gif?v=1001) |
|
ผมลองแก้ตามเเล้วครับ ไม่เปลี่ยนเลยครับ เหมือนเดิมเลยครับ
|
![](/images/resource/blockviewtopic_01.gif?v=1001) |
![](/images/resource/blockviewtopic_02.gif?v=1001) |
![](/images/resource/blockviewtopic_03.gif?v=1001) |
![](/images/resource/blockviewtopic_04.gif?v=1001) |
Date :
2015-09-24 10:30:01 |
By :
ifirstinw |
|
![](/images/resource/blockviewtopic_06.gif?v=1001) |
![](/images/resource/blockviewtopic_07.gif?v=1001) |
![](/images/resource/blockviewtopic_08.gif?v=1001) |
![](/images/resource/blockviewtopic_09.gif?v=1001) |
|
|
![](/images/resource/viewboard_06.gif?v=1001) |
![](/images/resource/viewboard_07.gif?v=1001) |
|
![](/images/resource/viewboard_08.jpg?v=1001) |
![](/images/resource/viewboard_09.gif?v=1001) |
![](/images/resource/viewboard_01.gif?v=1001) |
|
|
![](/images/resource/viewboard_03.gif?v=1001) |
![](/images/resource/viewboard_04.gif?v=1001) |
|
คุณต้องกำหนด session ตัวแปรรับ
และการตรวจสอบใหม่
Code (PHP)
$key=$_POST["txtProductID"].'_'.$_POST["txtProductSize"].'_'.$_POST["txtProductColor"];
if( isset( $_SESSION['data'][$key] )){
// มีข้อมูลอยู่แล้ว
$_SESSION['data'][$key]['txtQty']+=$_POST["txtQty"];
}else{
// ไม่พบ
$_SESSION['data'][$key]=$_POST;
}
แบบที่คุณทำ array key มันไม่เหมือน กัน
ลอง print_r($_SESSION) ออกมาดูครับ จะได้เห็น result เป็นยังไง
|
ประวัติการแก้ไข 2015-09-24 11:00:53
![](/images/resource/blockviewtopic_01.gif?v=1001) |
![](/images/resource/blockviewtopic_02.gif?v=1001) |
![](/images/resource/blockviewtopic_03.gif?v=1001) |
![](/images/resource/blockviewtopic_04.gif?v=1001) |
Date :
2015-09-24 10:59:58 |
By :
NewbiePHP |
|
![](/images/resource/blockviewtopic_06.gif?v=1001) |
![](/images/resource/blockviewtopic_07.gif?v=1001) |
![](/images/resource/blockviewtopic_08.gif?v=1001) |
![](/images/resource/blockviewtopic_09.gif?v=1001) |
|
|
![](/images/resource/viewboard_06.gif?v=1001) |
![](/images/resource/viewboard_07.gif?v=1001) |
|
![](/images/resource/viewboard_08.jpg?v=1001) |
![](/images/resource/viewboard_09.gif?v=1001) |
|
|
|
![](/images/digitalocean-banner.jpg)
|
Load balance : Server 05
|