|
|
|
ผมมี Array อยากจะเก็บค่าลง sql ช่วยลองดูหน่อยได้ไหมครับ |
|
|
|
|
|
|
|
ค่า Array ที่เก็บ ได้ ในแต่ละตัว
Array ( [0] => Array ( [item_id] => 46 [item_name] => พเพเ [item_price] => 3636 [item_quantity] => 1 [item_nameshop] => test2 )
[1] => Array ( [item_id] => 44 [item_name] => พเพเ [item_price] => 3636 [item_quantity] => 1 [item_nameshop] => test2 ) )
ตรงนี้คือจุดเก็บค่าครับ
html1.php
Code (PHP)
if(isset($_POST["add_cart"])){
if(isset($_SESSION["shopping_cart"])) // เช็คว่ามีการสร้าง $_SESSION ขึ้นหรือยัง เป็นการเช็คว่า สินค้าที่เพิ่มเข้ามามีอยู่หรือยัง ถ้ายังจะนำไอดีมา
{
$item_array_id = array_column($_SESSION["shopping_cart"], "item_id"); // item_arra_id เก็บค่า array column เก็บ item_id
if(!in_array($_GET["item_id"], $item_array_id)) // in_array เช็คว่ามีค่าอยู่ข้างในหรือยัง จะมีการนำไอดีมาเปรียบเทียบ
{
$count = count($_SESSION["shopping_cart"]);
$_SESSION['numitem'] = $_SESSION['numitem'] + 1;
$item_array = array(
'item_id' => $_GET["item_id"],
'item_name' => $_POST["hidden_name"],
'item_price' => $_POST["hidden_price"],
'item_quantity' => $_POST["quantity"],
'item_nameshop' => $_POST["hidden_nameshop"],
);
$_SESSION["shopping_cart"][$count] = $item_array;
}
else
{
echo '<script>alert("สินค้าถูกเพิ่มแล้ว")</script>';
echo '<script>window.location="Homepage.php"</script>';
}
}
else // จะเป็นการสร้าง array ขึ้นมาแล้วเก็บไว้ใน $item_array ไปใส่ไว้ใน $_SESSION['shopping_cart']
{
$item_array = array(
'item_id' => $_GET["item_id"],
'item_name' => $_POST["hidden_name"],
'item_price' => $_POST["hidden_price"],
'item_quantity' => $_POST["quantity"],
'item_nameshop' => $_POST["hidden_nameshop"],
);
$_SESSION["shopping_cart"][0] = $item_array;
}
}
html2.php
Code (PHP)
$sql = "SELECT product_id FROM product ORDER BY product_id DESC LIMIT 1";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$proid = $row['product_id'];
function option1($item_array_id, $conn){
if(is_array($_SESSION['shopping_cart'])){
foreach($item_array_id as $row => $value){
$itemid = mysqli_real_escape_string($conn, $value[0]);
$itemname = mysqli_real_escape_string($conn, $value[1]);
$itemprice = mysqli_real_escape_string($conn, $value[2]);
$itemquan = mysqli_real_escape_string($conn, $value[3]);
$itemshop = mysqli_real_escape_string($conn, $value[4]);
$sql1 = "INSERT INTO productdetail (product_id, item_id , quantity , price , nameshop ) VALUE ( '".$proid."' , '".$itemid."' , '".$itemquan."' , '".$itemprice."' , '".$itemprice."' , ) " ;
mysqli_query($conn, $sql1);
}
}
}
option1($_SESSION['shopping_cart'], $conn);
error ที่ขึ้น Undefined offset: 0
Undefined offset: 1
Undefined offset: 2
Undefined offset: 3
Undefined offset: 4
และมันบอกไม่รู้จัก Undefined variable: proid แต่ผมลองเทส แบบไม่วนในลูปค่าเก็บเข้าปกติเลยครับ
Tag : PHP
|
ประวัติการแก้ไข 2019-11-04 04:41:12 2019-11-04 04:46:47 2019-11-04 04:57:53
|
|
|
|
|
Date :
2019-11-04 04:40:51 |
By :
byte00789 |
View :
767 |
Reply :
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอคำสั่งที่ error ด้วยครับ
|
|
|
|
|
Date :
2019-11-04 08:02:45 |
By :
NewbiePHP |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$value[0] $value[1] $value[2] คืออะไรอ่ะ
ปกติ real escape ก็มีแค่นี้ แล้วมี $con เพื่อวัตถุประสงอะไร
Code (PHP)
mysqli_real_escape_string($_POST['username']);
มันคงไม่ได้ผิดที่ array แต่มันคงผิดที่ syntax ทำให้ Undefined เนี่ยล่ะ
|
|
|
|
|
Date :
2019-11-04 09:15:27 |
By :
Genesis™ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ๋อเข้าใจละครับว่ามันทำงานยังไง ... ลองเช็ค พวก $value[0] ตรวจสอบค่าก่อนว่ามีค่าจริงหรือไม่ ไม่งั้นนก็ลอง dump ออกมาดูก่อนครับเพราะ $value อาจไม่มีค่าอยู่จริง
|
ประวัติการแก้ไข 2019-11-04 12:41:07
|
|
|
|
Date :
2019-11-04 12:40:48 |
By :
Genesis™ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo ออกมาดูก่อน
|
|
|
|
|
Date :
2019-11-04 13:35:37 |
By :
Genesis™ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|