|
|
|
อยากจะ insert ข้อมูล array ลงในsql ต้องเขียนยังไงหรอครับ |
|
|
|
|
|
|
|
ไฟล์ที่ต้องการinsert
<?php
if(isset($_POST['submit'])){
if($_SESSION['numitem'] != 0){
unset($_SESSION['shopping_cart']);
$_SESSION['numitem'] = 0;
$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'];
$_serialize = serialize($_SESSION["shopping_cart"]);
$sql1 = "INSERT INTO productdetail (product_id, item_id, quantity, price, nameshop)
VALUES ($proid, , 1 , 1 , 1 )";
$result1 = $conn->query($sql1); //conn มาจากไฟล์ connectDB
echo '<script> alert("ยืนยันเสร็จสิ้น")</script>';
}
else{
echo '<script> alert("ไม่มีสินค้าในตะกร้าสินค้า")</script>';
header('Refresh:0; url=Homepage.php');
}
}
?>
<form action="" method="POST">
<div class="container text-right mt-4">
<button input class="btn btn-primary px-5" type="reset" value="Reset"> ล้างตะกร้า </button>
<input type="submit" name="submit" class="btn btn-success" value="ยืนยันสินค้า">
</div>
</form>
ดึงข้อมูลมาจาก
<?php if (isset($_SESSION['member_id'])) { ?>
<div class="container"> <!-- ตะกร้าสินค้า -->
<div class="text-right">
<a href="Cart.php?$_SESSION['shopping_cart'] ;" class="btn btn-secondary btn-lg active mt-4" role="button" aria-pressed="true" ><img src="icon/Cartphoto.png" width="30" height="30" /><span class="badge badge-light "></a>
</div>
<?php
if(isset($_POST["add_cart"])){
if(isset($_SESSION["shopping_cart"])) // เช็คว่ามีการสร้าง $_SESSION ขึ้นหรือยัง เป็นการเช็คว่า สินค้าที่เพิ่มเข้ามามีอยู่หรือยัง ถ้ายังจะนำไอดีมา
{
$item_array_id = array_column($_SESSION["shopping_cart"], "item_id");
if(!in_array($_GET["item_id"], $item_array_id))
{
$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"],
);
$_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']
{
$_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"],
);
$_SESSION["shopping_cart"][0] = $item_array;
}
}
?>
</div>
<?php } ?>
Tag : PHP
|
|
|
|
|
|
Date :
2019-10-08 17:22:06 |
By :
byte00789 |
View :
989 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แนวทาง Code เก่า ลองเปลี่ยนเป็น mysqli รูปแบบง่ายๆจะเป็นประมาณนี้
Code (PHP)
$SelectCount=Select("ecom_count","WHERE CountName='".$CountName."'"); //ดึง count ล่าสุดตาราง จำนวนนับ
$Count=mysql_fetch_array($SelectCount);
$OrderId="Order-".substr("0000000".$Count['Count'],-5); // substr ให้ได้เลข Order Id
$Date=date("Y-m-d");
for($i=0;$i<=count($_SESSION['ProductId']);$i++){ // แตก array ตำแหน่ง
$SelectProduct=Select("ecom_product","WHERE ProductId='".$_SESSION['ProductId'][$i]."'"); // Select ค่า
$Product=mysql_fetch_array($SelectProduct);
if($Product){ // เช็ค product ถ้ามีอยู่จริงใน db
$Price=$_SESSION['Quanlity'][$i]*$Product['Price']; // คำนวนราคา
$Total=$Total+$Price; // ราคารวม
$InsertOrderDetail=Insert("ecom_order_detail","OrderId,ProductId,Quanlity,Price","'".$OrderId."','".$_SESSION['ProductId'][$i]."','".$_SESSION['Quanlity'][$i]."','".$Price."'"); // function Insert รายละเอียดสินค้าทั้งหมด โดยค่าที่สำคัญคือ OrderID ไว้อ้างอิง ecom_order
}
}
$InsertOrder=Insert("ecom_order","MemberId,OrderId,Total,Date","'".$_SESSION['MemberId']."','".$OrderId."','".$Total."','".$Date."'"); // function Insert OrderID
|
ประวัติการแก้ไข 2019-10-08 17:46:22 2019-10-08 17:47:38
|
|
|
|
Date :
2019-10-08 17:45:02 |
By :
Genesis™ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|