<!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.0"\>
<!-- bootstrap5 --\>
<link href\="//cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel\="stylesheet" integrity\="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin\="anonymous"\>
<!--sweet alert --\>
<script src\="//code.jquery.com/jquery-2.1.3.min.js"\></script>
<script src\="//cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert-dev.js"\></script>
<link rel\="stylesheet" href\="//cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css"\>
<title\>PHP PDO เพิ่มข้อมูล 2 ตารางจากฟอร์มเดียว by devbanban.com 2021</title\>
</head\>
<body\>
<div class\="container"\>
<div class\="row"\>
<div class\="col-md-3"\></div\>
<div class\="col-md-8"\> <br\>
<h4\>PHP PDO :: เพิ่มข้อมูล 2 ตารางจากฟอร์มเดียว</h4\>
<form action\="" method\="post"\>
<div class\="mb-2"\>
<div class\="col-sm-9"\>
<input type\="text" name\="name" class\="form-control" required minlength\="3" placeholder\="ชื่อ"\>
</div\>
</div\>
<div class\="mb-2"\>
<div class\="col-sm-9"\>
<input type\="text" name\="surname" class\="form-control" required minlength\="3" placeholder\="นามสกุล"\>
</div\>
</div\>
<div class\="mb-2"\>
<div class\="col-sm-9"\>
<input type\="text" name\="username" class\="form-control" required minlength\="3" placeholder\="username"\>
</div\>
</div\>
<div class\="mb-3"\>
<div class\="col-sm-9"\>
<input type\="password" name\="password" class\="form-control" required minlength\="3" placeholder\="password"\>
</div\>
</div\>
<div class\="d-grid gap-2 col-sm-9 mb-3"\>
<button type\="submit" class\="btn btn-primary"\> เพิ่มข้อมูล </button\>
</div\>
</form\>
</div\>
</div\>
</div\>
<center\>คอร์สออนไลน์ <a href\="//devbanban.com/?cat=250" target\="_blank"\> คลิก </a\> </center\>
</body\>
</html\>
<?php
//print_r($_POST); //ตรวจสอบมี input อะไรบ้าง และส่งอะไรมาบ้าง
//ถ้ามีค่าส่งมาจากฟอร์ม
if(isset($_POST['name']) && isset($_POST['surname']) && isset($_POST['username']) && isset($_POST['password']) ){
//ไฟล์เชื่อมต่อฐานข้อมูล
require_once 'connect.php';
//ประกาศตัวแปรรับค่าจากฟอร์ม
$name \= $_POST['name'];
$surname \= $_POST['surname'];
$username \= $_POST['username'];
$password \= sha1($_POST['password']); //เก็บรหัสผ่านในรูปแบบ sha1
//sql insert tbl_member
$stmt \= $conn-\>prepare("INSERT INTO tbl_member
(name, surname) VALUES (:name, :surname)");
//bindParam data type
$stmt-\>bindParam(':name', $name, PDO::PARAM_STR);
$stmt-\>bindParam(':surname', $surname , PDO::PARAM_STR);
$result \= $stmt-\>execute();
//Get Latest Primary Key Inserted
$lastID \= $conn-\>lastInsertId();
//echo id ล่าสุดออกมาดูหน่อย ได้ตัวเลขออกมาไหม
echo $lastID;
//exit();
//sql insert tbl_member_login
$stmt2 \= $conn-\>prepare("INSERT INTO tbl_member_login
(member_id, username, password)
VALUES
($lastID,:username, :password)");
//bindParam data type
$stmt2-\>bindParam(':username', $username , PDO::PARAM_STR);
$stmt2-\>bindParam(':password', $password , PDO::PARAM_STR);
$result2 \= $stmt2-\>execute();
$conn \= null; //close connect db
//ปล. อย่าก๊อบวางเพียงอย่างเดียว จงประยุกต์ใช้ด้วยครับ
//ตรวจสอบการเพิ่มข้อมูลถ้าเพิ่มเข้าทั้ง 2 ตารางคือถูกต้อง
if($result && $result2){
echo '<script>
setTimeout(function() {
swal({
title: "เพิ่มข้อมูลสำเร็จ",
type: "success"
}, function() {
window.location = "formAdd2Table.php"; //หน้าที่ต้องการให้กระโดดไป
});
}, 1000);
</script\>';
}else{
echo '<script\>
setTimeout(function() {
swal({
title: "เกิดข้อผิดพลาด",
type: "error"
}, function() {
window.location \= "formAdd2Table.php"; //หน้าที่ต้องการให้กระโดดไป
});
}, 1000);
</script\>';
}
} //isset
//devbanban.com
?>