|
|
|
Array 2 มิติ...เนื่องจากว่า สินค้าสามารถเลือกราบละเอียดได้ เช่น เสื้อ มีสีแดง และสีเหลือง กางเกง มีสีดำ และสีน้ำเงิน |
|
|
|
|
|
|
|
$product['shirt'] = "T-shirt";
$product['shirt']['color'] = "Black";
print_r ($product);
ลองดูแล้วลองเปลี่ยนค่าดู
|
|
|
|
|
Date :
2010-07-07 11:03:44 |
By :
oxygenyoyo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือ หนูทำอย่างนี้น่ะค่ะ แต่ค่ามันไม่ออก รบกวนดู Code ให้หน่อยค่ะ คิดไม่ตก
Code (PHP)
<?
session_start();
$id_product=$_POST[id_product];
$id_color=$_POST[id_color];
$_SESSION["myCart"]= $myCart;
$_SESSION['sess_num']=$sess_num;
if(count($myCart)==0) {
$check=1;
}
else if (!in_array($myCart,$myCart)) {
$check=1;
}
if ($check==1) {
include "connect.php";
$sql = "select * from tb_product where id_prd = '$id_product' " ;
$result = mysql_db_query($dbname,$sql);
$rs = mysql_fetch_array($result);
$sess_id[] = $rs[id_prd];
$sess_name[] = $rs[name];
$sql1 = "select * from color where id_color = '$id_color' " ;
$result1 = mysql_db_query($dbname,$sql1);
$rs1 = mysql_fetch_array($result1);
$sess_id_color[] = $rs1[id_color];
$sess_name_color[] = $rs1[name_color];
$myCart=array($sess_id,$sess_id_color);
$sess_num [] =1;
}
print_r ($myCart);
// header ("Location: page3.php" ) ;
// session_destroy();
?>
|
|
|
|
|
Date :
2010-07-07 11:22:47 |
By :
naked13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค่าของอะไรไม่ออกครับ รบกวนอธิบายให้ละเอียดด้วย
ไม่งั้นผมคงต้องบอกว่าใ้ห้ลอง print_r ออกมาหมดอ่ะครับ
|
|
|
|
|
Date :
2010-07-07 11:41:59 |
By :
oxygenyoyo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือว่า เวลา ส่งค่า
id_product = 1
id_color=1
จะได้
Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 1 ) )
แต่ถ้า
id_product = 1
id_color=2
จะได้
Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 2 ) )
ซึ่งค่าที่ได้มันทับค่าเก่าค่ะ
คือ จุดประสงค์ที่ทำ คือ ต้องการเก็บสินค้า ชนิดเดียวกันแต่สีต่างกันในตระกร้าสินค้าได้อ่ะค่ะ
|
|
|
|
|
Date :
2010-07-07 11:52:23 |
By :
naked13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
$product = array();
$product['shirt'][] = "T-shirt";
$product['shirt'][] = "T-shirt";
$product['color'][] = "Black";
$product['color'][] = "Blue";
print_r ($product);
ก็วนลูปเอาว่าจะเก็บเข้าตัวไหนอ่ะครับ -- ' อาจจะไม่ตรงซะทีเดียวลองประยุกต์
|
|
|
|
|
Date :
2010-07-07 11:58:20 |
By :
oxygenyoyo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณพี่ OxyGenyoyo มากค่ะ รบกวนหลายรอบเลย ขอบคุณนะคะ
|
|
|
|
|
Date :
2010-07-07 12:53:57 |
By :
naked13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่เป็นไรขอแค่อยากจะจับปลาเป็นไม่ใช่ขอก็อยากจะช่วยสอนเหมือนกัน
|
|
|
|
|
Date :
2010-07-07 13:03:33 |
By :
oxygenyoyo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอโทษนะคะ คือ คิดไม่ออกจริงๆว่า
Code (PHP)
<?
session_start();
$id_product=$_POST[id_product];
$id_color=$_POST[id_color];
$_SESSION[numb]=$num;
$product = array();
for($i=0;$i<=$numb;$i++){
$product['shirt'][$i] = "$id_product";
$product['color'][$i] = "$id_color";
}
print_r ($num);
echo"<br><br><br>";
print_r ($product);
?>
คือ ตอนนี้ พอมันรับค่า $id_product กับค่า $id_color
แล้วมันเอาค่าที่รับมาใหม่มาทับ key เดิมค่ะ
ไม่ทราบว่าต้องวนลูปยังไงเพื่อไม่ให้ทับ Key เดิมคะ
ตอนนี้ค่าที่ได้
Array ( [shirt] => Array ( [0] => 1 ) [color] => Array ( [0] => 4) ) ค่านี้เมื่อส่ง id_product=1 และ id_color=4
คือมันไปทับ key เดิมอ่ะค่ะ
แต่ที่ต้องการคือ
Array ( [shirt] => Array ( [0] => 1 [1] => 1 ) [color] => Array ( [0] => 3 [1] => 4 ) ) ค่านี้เมื่อส่ง id_product=1 และ id_color=4
|
|
|
|
|
Date :
2010-07-07 15:58:19 |
By :
naked13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือต้องการที่ว่าถ้า user เลือกแต่ละครั้งเนี้ยก็เก็บไว้ก่อนใช่ไหมครับ แล้วเวลา user อยากรู้ว่ามีสินค้าอะไรที่ถูกเลือกไปบ้างแล้วถ้าเป็นอย่างนี้นะครับ
คุณก็ทำตัวแปร session มาสองตัวก็ได้ครับเ่ช่นนี้
Code (PHP)
session_start();
$_SESSION['shirt'][] = 1;
$_SESSION['color'][] = 4;
print_r ($_SESSION);
ลองดูครับว่าใช่อย่างที่ต้องการหรือเปล่า
|
|
|
|
|
Date :
2010-07-07 17:02:27 |
By :
oxygenyoyo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
บังเอิญไปเจอ Code มาค่ะ แต่เมื่อรันแล้วปรากฏณ์ว่า มันมีค่าซ้ำออกมาด้วยค่ะ ซึ่งในระบบจริงๆ ไม่น่าที่จะให้ Add สินค้า ที่มีสีซ้ำกันอ่ะค่ะ
Code (PHP)
<?
session_start();
$id_product=$_POST[id_product];
$id_color=$_POST[id_color];
$_SESSION['cart'][] = array(
"qty" => $id_color,
"productId" => $id_product,
);
if(isset($_SESSION['cart']))
{
foreach($_SESSION['cart'] as $cartItems)
{
else
{
$_SESSION['cart'][] = array(
"qty" => $id_color,
"productId" => $id_product,
);
}
}
}
else
{
$_SESSION['cart'][] = array(
"qty" => $id_color,
"productId" => $id_product,
);
}
print_r($cart);
?>
|
|
|
|
|
Date :
2010-07-07 18:45:02 |
By :
naked13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|