thaiall logomy background
coding : crud_devbanban.php.
my town
Source : Perl | PHP | ASP | JSP | HTML | HTML5 | JavaScript | Java | COBOL | C++ | MS Access | VBNet | VB | Python | โค้ดดี
File : crud_devbanban.php. ID : 9151
Skin : Default | Sons-of-obsidian | Sunburst | Highlighter | Full
<?php
/* โปรแกรมโดย พิศิษฐ์ บวรเลิศสุธี ต้นฉบับจาก https://devbanban.com/?p=4146
นำโค้ดมาใช้เพื่อการศึกษา เรื่องโค้ดแบบ crud และการรวมฟังก์ชันแบบ sequential structure
สร้าง database และ table และ insert มี แนะนำ 2 วิธี
1. mysql -u root -p < devbanban.sql
2. phpmyadmin
---
CREATE DATABASE IF NOT EXISTS `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `test`;
CREATE TABLE `tbl_member` (
  `id` int(11) NOT NULL,
  `name` varchar(50) NOT NULL,
  `surname` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tbl_member` (`id`, `name`, `surname`) VALUES
(1, 'นายจักรพัฒน์', 'ไชยแก้ว'),
(2, 'นายวรายุทธ', 'ขันก๋า'),
(3, 'นายสุริยา', 'พุฒดวง'),
(4, 'นางสาวนิชาภา', 'กะจันทร์'),
(5, 'นายสัมพันธ์', 'สุริยา'),
(6, 'นางสาวกวินทรา', 'ยะป๊อก'),
(7, 'นายพิศิษฐ์', 'บวรเลิศสุธี'),
(8, 'นายบุรินทร์', 'รุจจนพันธุ์'),
(9, 'นายวิเชพ', 'ใจบุญ');
(10, 'นางสาวเกศริน', 'อินเพลา');
(11, 'นางศศิวิมล', 'แรงสิงห์');
ALTER TABLE `tbl_member` ADD PRIMARY KEY (`id`);
ALTER TABLE `tbl_member`  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=12;
*/
$index = "crud_devbanban.php";
/* connect.php */
$servername = "localhost";
$username = "root";
$password = ""; //ถ้าไม่ได้ตั้งรหัสผ่านให้ลบ yourpassword ออก
try {
  $conn = new PDO("mysql:host=$servername;dbname=test", $username, $password);
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
  echo "Connection failed: " . $e->getMessage();
}
/* del.php */
if(isset($_GET['id']) && isset($_GET['act']) && $_GET['act'] == "del"){
//require_once 'connect.php';
$id = $_GET['id'];
$stmt = $conn->prepare('DELETE FROM tbl_member WHERE id=:id');
$stmt->bindParam(':id', $id , PDO::PARAM_INT);
$stmt->execute();
echo '<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert-dev.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css">';
// sweet alert 
if($stmt->rowCount() > 0){
  echo '<script>
    setTimeout(function() {
    swal({
      title: "ลบข้อมูลสำเร็จ", type: "success"
    }, function() { window.location = "' . $index .'"; }); 
    }, 1000);
  </script>';
  }else{
    echo '<script>
      setTimeout(function() {
      swal({
        title: "เกิดข้อผิดพลาด", type: "error"
      }, function() { window.location = "' . $index .'"; });
      }, 1000);
    </script>';
  }
  $conn = null;
  die('<meta http-equiv="refresh" content="0; url='. $index .'">');
} 

/* formedit.php */
if(isset($_GET['id']) && isset($_GET['act']) && $_GET['act'] == "edit"){
echo '<!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">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" 
integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
<title>Basic CRUD PHP PDO by devbanban.com 2021</title>
</head><body>';
if(isset($_GET['id'])){
  //require_once 'connect.php';
  $stmt = $conn->prepare("SELECT* FROM tbl_member WHERE id=?");
  $stmt->execute([$_GET['id']]);
  $row = $stmt->fetch(PDO::FETCH_ASSOC);
  if($stmt->rowCount() < 1){
    header('Location: '. $index);
    exit();
  }
}
die('<div class="container">
<div class="row">
<div class="col-md-4"><br/>
<h4>ฟอร์มแก้ไขข้อมูล</h4>
<form action="'.$index.'" method="post">
<div class="mb-1">
  <label for="name" class="col-sm-2 col-form-label"> ชื่อ :  </label>
  <div class="col-sm-10">
    <input type="text" name="name" class="form-control" required value="'. $row['name'].'" minlength="3">
  </div>
</div>
<div class="mb-1">
  <label for="name" class="col-sm-2 col-form-label"> นามสกุล :  </label>
    <div class="col-sm-10">
      <input type="text" name="surname" class="form-control" required value="'. $row['surname'].'" minlength="3">
    </div>
</div>
<input type="hidden" name="id" value="'. $row['id'].'">
<button type="submit" class="btn btn-primary">แก้ไขข้อมูล</button>
</form>
</div></div></div>
</body></html>');
}

/* formedit_db.php */
if(isset($_POST['name']) && isset($_POST['surname']) && isset($_POST['id'])) {
// require_once 'connect.php';
$id = $_POST['id'];
$name = $_POST['name'];
$surname = $_POST['surname'];
$stmt = $conn->prepare("UPDATE  tbl_member SET name=:name, surname=:surname WHERE id=:id");
$stmt->bindParam(':id', $id , PDO::PARAM_INT);
$stmt->bindParam(':name', $name , PDO::PARAM_STR);
$stmt->bindParam(':surname', $surname , PDO::PARAM_STR);
$stmt->execute();
// sweet alert 
echo '<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert-dev.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css">';
if($stmt->rowCount() > 0){
  echo '<script>
    setTimeout(function() {
      swal({
        title: "แก้ไขข้อมูลสำเร็จ", type: "success"
      }, function() { window.location = "'. $index .'"; });
      }, 1000);
      </script>';
}else{
  echo '<script>
    setTimeout(function() {
      swal({
        title: "เกิดข้อผิดพลาด", type: "error"
      }, function() { window.location = "'. $index .'"; });
      }, 1000);
      </script>';
}
$conn = null; 
die('<meta http-equiv="refresh" content="0; url='. $index .'">');
}

/* formAdd.php */
if(isset($_GET['act']) && $_GET['act'] == "add"){
die ('<!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">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" 
integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
<title>Basic CRUD PHP PDO by devbanban.com 2021</title>
</head><body>
<div class="container">
  <div class="row">
    <div class="col-md-4"> <br/> 
      <h4>ฟอร์มเพิ่มข้อมูล</h4>
        <form action="?" method="post">
          <div class="mb-1">
            <label for="name" class="col-sm-2 col-form-label"> ชื่อ :  </label>
            <div class="col-sm-10">
              <input type="text" name="name" class="form-control" required minlength="3" placeholder="ชื่อ">
            </div>
         </div>
         <div class="mb-1">
           <label for="name" class="col-sm-2 col-form-label"> นามสกุล :  </label>
           <div class="col-sm-10">
             <input type="text" name="surname" class="form-control" required minlength="3" placeholder="นามสกุล">
           </div>
         </div>
         <button type="submit" class="btn btn-primary">เพิ่มข้อมูล</button>
       </form>
     </div>
   </div>
</div>
</body></html>');
}

/* formAdd_db.php */
if(isset($_POST['name']) && isset($_POST['surname'])){
// require_once 'connect.php';
  $name = $_POST['name'];
  $surname = $_POST['surname'];
  $stmt = $conn->prepare("INSERT INTO tbl_member (name, surname) VALUES (:name, :surname)");
  $stmt->bindParam(':name', $name, PDO::PARAM_STR);
  $stmt->bindParam(':surname', $surname , PDO::PARAM_STR);
  $result = $stmt->execute();
  // sweet alert 
  echo '<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert-dev.js"></script>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css">';
  if($result){
    echo '<script>
    setTimeout(function() {
    swal({
      title: "เพิ่มข้อมูลสำเร็จ", type: "success"
    }, function() { window.location = "index.php"; });
    }, 1000);
    </script>';
  }else{
    echo '<script>
    setTimeout(function() {
    swal({
      title: "เกิดข้อผิดพลาด", type: "error"
    }, function() { window.location = "index.php"; });
    }, 1000);
    </script>';
  }
  $conn = null; //close connect db
  die('<meta http-equiv="refresh" content="0; url='. $index .'">');
} //isset

/* index.php */
?><!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">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" 
integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
<title>Basic CRUD PHP PDO by devbanban.com 2021</title></head>
<body>
<div class="container">
  <div class="row">
    <div class="col-md-12"> <br/>
      <h3>รายการสมาชิก <a href="?act=add" class="btn btn-info">+เพิ่มข้อมูล</a> </h3>
      <table class="table table-striped  table-hover table-responsive table-bordered">
      <thead>
      <tr>
      <th width="5%">ลำดับ</th>
      <th width="40%">ชื่อ</th>
      <th width="45%">นามสกุล</th>
      <th width="5%">แก้ไข</th>
      <th width="5%">ลบ</th>
      </tr>
      </thead>
      <tbody>
<?php
// require_once 'connect.php';
$stmt = $conn->prepare("SELECT* FROM tbl_member");
$stmt->execute();
$result = $stmt->fetchAll();
foreach($result as $k) { ?>
      <tr>
      <td><?= $k['id'];?></td>
      <td><?= $k['name'];?></td>
      <td><?= $k['surname'];?></td>
      <td><a href="?act=edit&id=<?= $k['id'];?>" class="btn btn-warning btn-sm">แก้ไข</a></td>
      <td><a href="?act=del&id=<?= $k['id'];?>" class="btn btn-danger btn-sm" 
      onclick="return confirm('ยืนยันการลบข้อมูล !!');">ลบ</a></td>
      </tr>
<?php } ?>
      </tbody>
      </table>
    </div>
  </div>
</div>
<center>Basic CRUD PHP PDO by devbanban.com 2021</center>
</body></html>
จำนวน : 265 บรรทัด
าษาเฮชทีเอ็มแอล (HTML = HyperText Markup Language) คือ ภาษาคอมพิวเตอร์ที่ออกแบบมาเพื่อใช้ในการสร้างเว็บเพจที่เรียกดูผ่านทางเว็บเบราว์เซอร์ (Web Browser) เริ่มพัฒนาโดย ทิม เบอร์เนอรส์ ลี (Tim Berners Lee) ในปัจจุบัน HTML ล่าสุดคือ รุ่น 5 เป็นมาตรฐานหนึ่งของ ISO ซึ่งจัดการโดย World Wide Web Consortium (W3C) ในปัจจุบัน ทาง W3C ผลักดัน รูปแบบของ HTML แบบใหม่ ที่เรียกว่า XHTML รุ่นแรกคือ 1.0 (ม.ค.2543) ซึ่งมีโครงสร้างเป็นแบบ XML (eXtensible Markup Language)
าษาพีเอชพี (PHP Language) คือ ภาษาคอมพิวเตอร์ประเภทโอเพนท์ซอร์ท (Open Source Computer Language) สำหรับพัฒนาเว็บเพจแบบไดนามิก เมื่อเครื่องบริการได้รับคำร้องจากผู้ใช้ก็จะส่งให้กับ ตัวแปลภาษา ทำหน้าที่ประมวลผลและส่งข้อมูลกลับไปยังเครื่องของผู้ใช้ที่ร้องขอ ในรูปเอชทีเอ็มแอล ภาพ หรือแฟ้มดิจิทอลอื่นใด ลักษณะของภาษามีรากฐานคำสั่งมาจากภาษาซี เป็นภาษาที่สามารถพัฒนาให้ใช้งานแบบโต้ตอบกับผู้ใช้ได้
าษาไพทอน (Python Language) คือ ภาษาคอมพิวเตอร์ประเภทโอเพนท์ซอร์ท (Open Source Computer Language) สำหรับพัฒนาแอพพลิเคชั่นโดยไม่ยึดติดกับแพลตฟอร์ม (Platform) และใช้ในงานได้หลายประเภท ทั้งใช้ในการประมวลผลผ่านคอมมานด์ไลน์ หรือเป็นเว็บเพจแบบไดนามิก เมื่อเครื่องบริการได้รับคำร้องจากผู้ใช้ก็จะส่งให้โค้ดให้กับตัวแปลภาษา เพื่อทำหน้าที่ประมวลผลและส่งข้อมูลกลับไปยังเครื่องของผู้ใช้ที่ร้องขอ ในรูปข้อความ เอชทีเอ็มแอล ภาพ หรือแฟ้มดิจิทอลอื่นใด ลักษณะของภาษามีรากฐานคำสั่งมาจากภาษาซี เป็นภาษาที่สามารถพัฒนาให้ใช้งานแบบโต้ตอบกับผู้ใช้ได้ จุดที่แตกต่างกับภาษาอื่น คือ การรวบรวมจุดเด่นของแต่ละภาษามารวมเข้าด้วยกัน
อสคิวแอล (SQL = Structured Query Language) คือ ภาษาสอบถามข้อมูล หรือภาษาจัดการข้อมูลอย่างมีโครงสร้าง มีการพัฒนาภาษาคอมพิวเตอร์ และโปรแกรมฐานข้อมูลที่รองรับมากมาย เพราะจัดการข้อมูลได้ง่าย เช่น MySQL, MariaDB, MsSQL, PostgreSQL หรือ MS Access เป็นต้น สำหรับโปรแกรมฐานข้อมูลที่ได้รับความนิยมคือ MySQL หรือ MariaDB เป็น Open Source ที่ใช้งานได้ทั้งใน Linux และ Windows
วัสดีชาวโลก (Hello World) คือ ผลลัพธ์ครั้งแรกที่นักพัฒนาโปรแกรมนิยมเลือกใช้แสดงผลในโปรแกรมแรกที่เขียนขึ้นเพื่อทดสอบการทำงาน ข้อความนี้ทำให้นึกถึงมนุษย์ต่างดาวที่มาเยือนโลกและกล่าวกับมนุษย์เมื่อพบกันครั้งแรกในภาพยนตร์
ตัวอย่าง Hello World
ปรับปรุงโปรแกรม source.pl : 2565-07-24
Thaiall.com