Hướng dẫn php mysql template

  • Trang chủ
  • Hướng dẫn học
  • Học PHP
  • PHP insert dữ liệu vào MySQL thông qua form

PHP insert dữ liệu vào MySQL thông qua form

  • Bài trước đã hướng dẫn cách thêm dữ liệu bằng câu lệnh MySQL, bài này sẽ hướng dẫn cách kết hợp với form để insert dữ liệu.
  • Dữ liệu có thể là _GET hay _POST, tùy vào độ bảo mật của dữ liệu, xem lại _GET và P_OST
  • Các bước thực hiện:

    • Tạo form insert dữ liệu.
    • Kết nối database và table.
    • Lấy dữ liệu post từ form
    • Xử lý dữ liệu.
    • Đóng database.
  • Nếu chưa biết cách lấy dữ liệu từ form thì bạn xem lại phần xử lý form

Form dữ liệu

Tiêu đề:
Ngày tháng:
Mô tả:
Nội dung:

Xử lý dữ liệu insert

Kiểu hướng đối tượng

// Khai báo username
$password = "123456";      // Khai báo password
$server   = "localhost";   // Khai báo server
$dbname   = "tintuc";      // Khai báo database

// Kết nối database tintuc
$connect = new mysqli($server, $username, $password, $dbname);

//Nếu kết nối bị lỗi thì xuất báo lỗi và thoát.
if ($connect->connect_error) {
    die("Không kết nối :" . $conn->connect_error);
    exit();
}

//Khai báo giá trị ban đầu, nếu không có thì khi chưa submit câu lệnh insert sẽ báo lỗi
$title = "";
$date = "";
$description = "";
$content = "";

//Lấy giá trị POST từ form vừa submit
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if(isset($_POST["title"])) { $title = $_POST['title']; }
    if(isset($_POST["date"])) { $date = $_POST['date']; }
    if(isset($_POST["description"])) { $description = $_POST['description']; }
    if(isset($_POST["content"])) { $content = $_POST['content']; }

    //Code xử lý, insert dữ liệu vào table
    $sql = "INSERT INTO tin_xahoi (title, date, description, content)
    VALUES ('$title', '$date', '$description', '$content')";

    if ($connect->query($sql) === TRUE) {
        echo "Thêm dữ liệu thành công";
    } else {
        echo "Error: " . $sql . "
" . $connect->error; } } //Đóng database $connect->close(); ?>
Tiêu đề:
Ngày tháng:
Mô tả:
Nội dung:

  • Nếu không xảy ra lỗi gì, dữ liệu được insert thì sẽ xuất câu thông báo như trên.

Kiểu thủ tục

// Khai báo username
$password = "123456";      // Khai báo password
$server   = "localhost";   // Khai báo server
$dbname   = "tintuc";      // Khai báo database

// Kết nối database tintuc
$connect = mysqli_connect($server, $username, $password, $dbname);

//Nếu kết nối bị lỗi thì xuất báo lỗi và thoát.
if (!$connect) {
    die("Không kết nối :" . mysqli_connect_error());
    exit();
}

//Khai báo giá trị ban đầu, nếu không có thì khi chưa submit câu lệnh insert sẽ báo lỗi
$title = "";
$date = "";
$description = "";
$content = "";

//Lấy giá trị POST từ form vừa submit
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if(isset($_POST["title"])) { $title = $_POST['title']; }
    if(isset($_POST["date"])) { $date = $_POST['date']; }
    if(isset($_POST["description"])) { $description = $_POST['description']; }
    if(isset($_POST["content"])) { $content = $_POST['content']; }

    //Code xử lý, insert dữ liệu vào table
    $sql = "INSERT INTO tin_xahoi (title, date, description, content)
    VALUES ('$title', '$date', '$description', '$content')";

    if (mysqli_query($connect, $sql)) {
        echo "Thêm dữ liệu thành công";
    } else {
        echo "Error: " . $sql . "
" . mysqli_error($connect); } } //Đóng database mysqli_close($connect); ?>
Tiêu đề:
Ngày tháng:
Mô tả:
Nội dung:

Download file ví dụ

Trong file download đã có sẵn file tintuc.sql, file này là file dữ liệu mẫu, sau khi đã tạo database chúng ta có thể đưa dữ liệu từ file tintuc.sql bằng thao tác import có trong phpMyAdmin.