PHP Căn Bản Bài 2

Phương thức GET và POST

1. Về lý thuyết

Phương thức GET và POST là hai phương thức gửi dữ liệu đến máy chủ trong PHP. Đây là hai phương thức phổ biến nhất được sử dụng để gửi và nhận dữ liệu từ một trang web.

Phương thức GET: Phương thức GET được sử dụng để gửi dữ liệu tới máy chủ bằng cách thêm dữ liệu vào URL. Nó là phương thức mạnh nhất trong việc gửi dữ liệu tới máy chủ và có thể gửi tối đa 2KB dữ liệu.

Phương thức POST: Phương thức POST được sử dụng để gửi dữ liệu tới máy chủ bằng cách gửi dữ liệu dưới dạng header HTTP. Nó có khả năng gửi dữ liệu nhiều hơn so với GET và có thể gửi tối đa 8MB dữ liệu.

Khi sử dụng PHP để gửi và nhận dữ liệu từ máy chủ, chúng ta có thể sử dụng các biến $_GET hoặc $_POST để lấy dữ liệu từ máy chủ.

2. Minh họa:

code HTML

<form action="get_data.php" method="get">
  <input type="text" name="username">
  <input type="submit" value="Submit">
</form>
code PHP

<?php
  if(isset($_GET['username'])) {
    $username = $_GET['username'];
    echo "Username: ".$username;
  }
?>

Để lưu dữ liệu vào database MySQL, chúng ta cần kết nối tới database bằng cách sử dụng câu lệnh mysqli_connect() và sau đó thực hiện câu lệnh SQL để thêm dữ liệu vào bảng.
<?php
if (isset($_POST['username'])) {
    $username = $_POST['username'];
    $servername = "localhost";
    $dbusername = "root";
    $dbpassword = "";
    $dbname = "test_db";

    // Create connection
    $conn = mysqli_connect($servername, $dbusername, $dbpassword,
    $dbname);
    // kiem tra ket noi
    if (!$conn) {
        die("Kết nối thất bại: " . mysqli_connect_error());
    }

    $sql = "INSERT INTO users (username) VALUES ('$username')";
    if (mysqli_query($conn, $sql)) {
        echo "Tạo thành công.";
    } else {
        echo "Lỗi: " . $sql . "<br>" . mysqli_error($conn);
    }

    mysqli_close($conn);
}
?>

3. Giải thích chi tiết:

Trong ví dụ trên, chúng ta đang sử dụng phương thức POST để lấy dữ liệu từ form.

Đầu tiên, chúng ta kiểm tra xem có tồn tại biến $_POST['username'] hay không bằng câu lệnh if(isset($_POST['username'])). Nếu tồn tại, chúng ta lấy giá trị của biến và gán cho biến $username.

Sau đó, chúng ta khai báo các thông tin kết nối đến database bằng cách khai báo các biến $servername, $dbusername, $dbpassword, $dbname.

Tiếp theo, chúng ta sử dụng hàm mysqli_connect() để kết nối đến database với 4 thông tin đã khai báo trước đó. Nếu kết nối thành công, chúng ta sẽ thực hiện câu lệnh SQL để thêm dữ liệu vào bảng users với cột username với giá trị là giá trị của biến $username. Nếu câu lệnh thực hiện thành công, chúng ta sẽ in ra thông báo "Tạo thành công.". Nếu không thành công, chúng ta sẽ in ra thông báo lỗi.

Cuối cùng, chúng ta sử dụng hàm mysqli_close() để đóng kết nối đến database.

Đăng nhận xét

0 Nhận xét