การ Insert data แบบ multi array ทำยังไงครับ รบกวนช่วยดู โค้ดหน่อยครับ
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา การ Insert data แบบ multi array ทำยังไงครับ รบกวนช่วยดู โค้ดหน่อยครับ
การ Insert data แบบ multi array ทำยังไงครับ รบกวนช่วยดู โค้ดหน่อยครับ
Copy
อันนี้คือ โค้ดสำหรับinsert
<?php session_start(); //PUT THIS HEADER ON TOP OF EACH UNIQUE PAGE if(!isset($_SESSION['id_user'])){ header("location:index.php"); } include_once('config.php'); $id_user = $_SESSION['id_user']; $rn_first_name = $_POST['rn_first_name']; $rn_last_name = $_POST['rn_last_name']; $rn_gostart = $_POST['rn_gostart']; $rn_endstart = $_POST['rn_endstart']; $time_gostart = $_POST['time_gostart']; $time_endstart = $_POST['time_endstart']; $rn_tel = $_POST['rn_tel']; $rn_amount = $_POST['rn_amount']; $rn_svan = $_POST['rn_svan']; $rn_destination = $_POST['rn_destination']; $id_invoice = $_POST['id_invoice']; $Status = $_POST['Status']; $vn_dtial = $_POST['vn_dtial']; $rn_place = $_POST['rn_place']; $travellist_id = $_POST['travellist_id']; $province_id = $_POST['province_id']; $travel_id = $_POST['travel_id']; $total = $_POST['total']; // function date $date_go = "$rn_gostart"; //กำหนดค้นวันที่เริ่ม $date_end = "$rn_endstart"; //กำหนดค้นวันที่กลับ $datetime1 = new DateTime($date_go); $datetime2 = new DateTime($date_end); $datetotal = $datetime1->diff($datetime2); $total= $datetotal->format('%a') * 1800; //ผลการคำนวณ $date = "$rn_gostart"; //กำหนดค้นวันที่ $result = mysqli_query($mysqli,"select * from vn_rent where rn_gostart = '$date'"); $ckd = mysqli_num_rows($result); if($ckd >= 3){ $msg = "<div class='alert alert-danger'> <span class='glyphicon glyphicon-info-sign'></span> วันที่จองเต็มแล้ว </div>"; }else{ $sql = "INSERT INTO vn_rent (id_user,rn_first_name,rn_last_name,rn_gostart,rn_endstart,time_gostart,time_endstart,rn_tel,rn_amount,rn_svan,Status,vn_dtial,rn_place,rn_destination,total) VALUES ('$id_user', '$rn_first_name',' $rn_last_name ','$rn_gostart','$rn_endstart','$time_gostart','$time_endstart','$rn_tel','$rn_amount','$rn_svan','$Status','$vn_dtial','$rn_place','$rn_destination','$total')"; //คำสั่ง insert 2 ตาราง if ($mysqli->query($sql) === TRUE) { $id_van = $mysqli->insert_id; $mysqli->query("INSERT INTO invoice (id_user,id_van) VALUE($id_user, $id_van)"); $id_invoice = $mysqli->insert_id; $mysqli->query("UPDATE vn_rent SET id_invoice = '$id_invoice' WHERE id_van = $id_van"); $msg = "<div class ='alert alert-success alert-styled-left alert-arrow-left alert-bordered'> จองรถตู้สำเร็จ โปรดรอการตอบรับจากทางเจ้าหน้าที่</p> เลขที่รายการจอง <span class='text-warning'>".$id_van."</span> เลขที่ใบเสร็จ <span class='text-warning'>".$id_invoice."</span> </div>"; header("refresh:5; url=history_booking.php"); } else { echo "Error: " . $sql . "<br>" . $mysqli->error; } } $mysqli->close(); ?> อันนี้สำหรับหน้าฟรอม
<?php session_start(); //PUT THIS HEADER ON TOP OF EACH UNIQUE PAGE if(!isset($_SESSION['id_user'])){ header("location:../index.php"); header("Content-type: text/html; charset=utf-8"); } include "config.php"; $strSQL = "SELECT * FROM vn_order order by id_vn_order desc "; $objQuery = mysqli_query($mysqli,$strSQL); $sqlus = "SELECT * FROM vn_user WHERE id_user = '".$_SESSION['id_user']."' "; $objQu = mysqli_query($mysqli,$sqlus); $objResult = mysqli_fetch_array($objQu); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Limitless - Responsive Web Application Kit by Eugene Kopyov</title> <!-- Global stylesheets --> <link href='https://fonts.googleapis.com/css?family=Kanit&subset=thai,latin' rel='stylesheet' type='text/css'> <link href="assets/css/icons/icomoon/styles.css" rel="stylesheet" type="text/css"> <link href="assets/css/bootstrap.css" rel="stylesheet" type="text/css"> <link href="assets/css/core.css" rel="stylesheet" type="text/css"> <link href="assets/css/components.css" rel="stylesheet" type="text/css"> <link href="assets/css/colors.css" rel="stylesheet" type="text/css"> <link href="assets/css/sweet-alert.css" rel="stylesheet" type="text/css"> <script type="text/javascript" src="assets/js/alert/sweet-alert.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script> <script src="respond.js"></script> <style type="text/css"> body { font-family: 'Kanit', sans-serif; } </style> </head> <body onLoad="setPostBack();"> <?php require_once("inc/header_menu.php") ?> <!-- /user menu --> <?php require_once("inc/menu.php") ?> <!-- Main content --> <div class="content-wrapper"> <!-- Content area --> <div class="content"> <!-- Basic datatable --> <div class="panel panel-flat"> <div class="panel-heading"> <h5 class="panel-title">จองรถตู้</h5> <div class="heading-elements"> <ul class="icons-list"> <li><a data-action="collapse"></a></li> <li><a data-action="reload"></a></li> <li><a data-action="close"></a></li> </ul> </div> </div> <div class="panel-body"> </div> <form role="form" action="dorent.php" method="post" onSubmit="return doSubmit();"> <input type="hidden" value="1" name="id_user"/> <input type="hidden" value="1" name="id_invoice"/> <input type="hidden" value="1" name="travellist_id"/> <input type="hidden" value="Approve" name="Status"/> <div class="panel-body"> <div class="row"> <div class="col-md-6"> <fieldset> <legend class="text-semibold"><i class="icon-reading position-left"></i> Personal details</legend> <div class="form-group"> <label>ชื่อ</label> <input type="text" class="form-control" placeholder="ชื่อ" name="rn_first_name" id="rn_first_name" value="<?php echo $objResult["firstname"];?>" readonly> </div> <div class="form-group"> <label>นามสกุล:</label> <input type="text" class="form-control" placeholder="นามสกุล" name="rn_last_name" id="rn_last_name" value="<?php echo $objResult["lastname"];?>"readonly> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label>E-mail</label> <input type="text" class="form-control" placeholder="Email" name="" id="" value="<?php echo $objResult["email"];?>"readonly> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label>เบอร์โทรศัพท์</label> <input type="text" class="form-control format-phone-number" name="rn_tel" id="rn_tel" placeholder="เบอร์ติดต่อ" value="<?php echo $objResult["Tel"];?>"maxlength="10" readonly> </div> </div> </div> </div> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> <script type="text/javascript"> $(function(){ var obj_a = $("#rn_amount"); var obj_b = $("#data_b"); // a เปลี่ยนเมื่อ keyup แล้ว b เปลี่ยน ตามเงื่อนไขค่า a obj_a.on("keyup",function(){ var value_obj_a = parseInt($(this).val()); // เก็บค่า a ไว้ในตัวแปร (parseInt คือเปลงเป็นเลข) if(value_obj_a>9){ // กำหนดเงื่อนไขให้กับค่า a obj_b.val(2); // เปลี่ยนค่า b เป้น 3 }else{ obj_b.val(1); // เปลี่ยนค่า b เป็น 1 } }); }); </script> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label>จำนวนวนคนที่ไป</label> <input type="text" name="rn_amount" id="rn_amount" value="" class="form-control"><br> </div> </div> <div class="col-md-6"> <div class="form-group"> <label class="display-block text-semibold">ประเภทรถตู้</label> <select name="data_b" id="data_b" class="form-control"> <option value=""> Select </option> <option value="1">9</option> <option value="2">13</option> </select> </div> </div> </div> </div> <div class="row"> <div class="col-md-6"> <legend class="text-semibold"><i class="icon-truck position-left"></i> Shipping details</legend> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label>วันที่จอง : (วันที่ไป)</label> <input class="form-control" type="date" name="rn_gostart" id="rn_gostart"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>วันที่กลับ : (วันกลับ)</label> <input class="form-control" type="date" name="rn_endstart" id="rn_endstart"> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label>เวลาเดินทางไป</label> <input class="form-control" type="time" name="time_gostart" id="time_gostart"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>เวลาเดินทางกลับ</label> <input class="form-control" type="time" name="time_endstart" id="time_endstart"> </div> </div> </div> <input type="hidden" id="txtNum" value="1" size="2" /> <table border="0" width="100%"> <thead> <tr> <th> <div class="row"> <div class="col-md-10"> <div class="form-group"> <label class="display-block text-semibold"> จังหวัดที่ท่องเที่ยว</label> <select name="province_id[]" id="selProvince" class="select-search"> <option value="">กรุณาเลือกจังหวัด</option> <?php include("connect.inc.php"); $SelectPr="SELECT * FROM province"; $QueryPro=mysql_query($SelectPr); while($Pro=mysql_fetch_array($QueryPro)){ ?> <option value="<?=$Pro['province_id']?>"><?=$Pro['province_name']?></option> <?php } ?> </select> </div> </div> </div> </th> <th> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label class="display-block text-semibold"> สถานที่ท่องเที่ยว</label> <select id="selTravel" name="travel_id[]" class="select-search"><option value="">กรุณาเลือกจังหวัด</option></select> </div> </div> </div> </div> </th> <th> </th> </tr> <tr><td><center>รายการที่เพิ่ม</center></td></tr> </thead> <tbody> </tbody> </table> <div class="row"> <div class="form-group"> <div class="col-md-6"> <button type="button" id="btnP">เพิ่มรายการ</button> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label class="display-block text-semibold"> สถานที่ไปรับ</label> <input class="form-control" type="text" name="rn_place" autocomplete="off"> </div> </div> </div> <div class="form-group"> <label>สถานที่เพิ่มเติมระหว่างทาง</label> <textarea rows="5" cols="5" class="form-control" name="vn_dtial" placeholder="Enter your message here"></textarea> </div> </fieldset> </div> </div> <div class="text-right"> <button type="submit" class="btn btn-primary">Submit form <i class="icon-arrow-right14 position-right"></i></button> </div> </div> </div> </form> <!-- Footer --> <div class="footer text-muted f-xs text-center"> © 2016. <a href="#">ระบบจองรถตู้ออนไลน์</a> by ออนทัว </div> <!-- /footer --> </div> </div> </div> </div> <script> function getId(val){ $.ajax({ type: "POST", url: "getdata.php", data: "province_id="+val, success: function(data){ $("#travelList").html(data); } }); } </script> <!-- Core JS files --> <script type="text/javascript" src="assets/js/plugins/loaders/pace.min.js"></script> <script type="text/javascript" src="assets/js/core/libraries/jquery.min.js"></script> <script type="text/javascript" src="assets/js/core/libraries/bootstrap.min.js"></script> <script type="text/javascript" src="assets/js/plugins/loaders/blockui.min.js"></script> <!-- /core JS files --> <script type="text/javascript" src="assets/js/core/libraries/jquery_ui/interactions.min.js"></script> <script type="text/javascript" src="assets/js/plugins/forms/selects/select2.min.js"></script> <script type="text/javascript" src="assets/js/pages/form_select2.js"></script> <script type="text/javascript" src="assets/js/plugins/forms/styling/uniform.min.js"></script> <script type="text/javascript" src="assets/js/core/app.js"></script> <script type="text/javascript" src="assets/js/pages/form_layouts.js"></script> <script type="text/javascript" src="assets/js/plugins/forms/styling/uniform.min.js"></script> <script type="text/javascript" src="assets/js/plugins/forms/styling/switchery.min.js"></script> <script type="text/javascript" src="assets/js/plugins/forms/styling/switch.min.js"></script> <script type="text/javascript" src="assets/js/pages/form_checkboxes_radios.js"></script> </table> </body> </html>
ตรงส่วนนี้สำหรับการ insert ค่าที่มีหลายๆอันลงใน table เดียวกัน โดยใช้ id_van เป็น FK ประมาณว่า 1 id_van สามารถจองได้หลายสถานที่
<table border="0" width="100%"> <thead> <tr> <th> <div class="row"> <div class="col-md-10"> <div class="form-group"> <label class="display-block text-semibold"> จังหวัดที่ท่องเที่ยว</label> <select name="province_id[]" id="selProvince" class="select-search"> <option value="">กรุณาเลือกจังหวัด</option> <?php include("connect.inc.php"); $SelectPr="SELECT * FROM province"; $QueryPro=mysql_query($SelectPr); while($Pro=mysql_fetch_array($QueryPro)){ ?> <option value="<?=$Pro['province_id']?>"><?=$Pro['province_name']?></option> <?php } ?> </select> </div> </div> </div> </th> <th> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label class="display-block text-semibold"> สถานที่ท่องเที่ยว</label> <select id="selTravel" name="travel_id[]" class="select-search"><option value="">กรุณาเลือกจังหวัด</option></select> </div> </div> </div> </div> </th> <th> </th> </tr> <tr><td><center>รายการที่เพิ่ม</center></td></tr> </thead> <tbody> </tbody> </table> <div class="row"> <div class="form-group"> <div class="col-md-6"> <button type="button" id="btnP">เพิ่มรายการ</button> </div> </div> </div>
นี้คือตาราง ที่ใช้ในการจัดเก็บ ข้อมูลสถานที่ท่องเที่ยวหลายๆตัว
สำหรับ code ส่วนนี้คือ
$sql = "INSERT INTO vn_rent (id_user,rn_first_name,rn_last_name,rn_gostart,rn_endstart,time_gostart,time_endstart,rn_tel,rn_amount,rn_svan,Status,vn_dtial,rn_place,rn_destination,total) VALUES ('$id_user', '$rn_first_name',' $rn_last_name ','$rn_gostart','$rn_endstart','$time_gostart','$time_endstart','$rn_tel','$rn_amount','$rn_svan','$Status','$vn_dtial','$rn_place','$rn_destination','$total')"; //คำสั่ง insert 2 ตาราง if ($mysqli->query($sql) === TRUE) { $id_van = $mysqli->insert_id; $mysqli->query("INSERT INTO invoice (id_user,id_van) VALUE($id_user, $id_van)"); $id_invoice = $mysqli->insert_id; $mysqli->query("UPDATE vn_rent SET id_invoice = '$id_invoice' WHERE id_van = $id_van");
หลังจาก insert ตาราง vn_rent เสร็จ ก็จะไป insert ตาราง invoice แล้วนำ id_invoice กลับมาอัปเดท ใน id_van
ปัญหาของผมคือ ผมจะทำยังไงให้มันบันทึกข้อมูลไปที่ table travel_list ที่ไว้เก็บสถานที่ หลายๆสถานที่ โดยใช้ id_van เป็น FK
ผมต้องทำยังไงครับ ผมลองยังไงมันก็ไม่ insert ไป
Awordmart2
23-06-2016
21:37:51
คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา
โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ