Monday, February 24, 2020
  • About
  • Donate
  • Contact
  • Download File
  • Request
  • Other
    • Test Code – TanHongIT
Tân Hồng IT
  • Home
    • Liên Hệ TanHongIT – các bạn có thể liên hệ với TanHongIT.Net Tại Đây
    • Donate – TanHongIT.Net
    • Yêu Cầu Phần Mềm, Thủ Thuật
    • Hướng dẫn tải File, phần mềm và các loại tài liệu khác trên TanHongIT.Net
  • Orther
    • Tool Online
      • Test Code Online
      • EnCoder SVG
      • HTML Converter
    • ShareVui – Online Movies
  • Tài Liệu
    • All
    • Design
    • Development
    • IT & Software
    • LANGUAGE
    • Marketing
    • Office Productivity
    • Phát triển bản thân
    • Sức khoẻ cuộc sống
    • Tài Liệu Mạng
    • Udemy
    phuong thuc get post trong php

    Bài 13: Phương thức GET và POST trong PHP

    chuoi string va cac ham xu ly trong php

    Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

    cac ham xu ly mang php

    Bài 11: Các hàm xử lý mảng (Array) trong PHP

    mang array trong php

    Bài 10: Mảng (Array) Trong PHP

    code web nam moi 2020

    Share Code Đếm Ngược Chào Mừng Năm Mới 2020 Với Hiệu Ứng Tuyệt Đẹp

    ham function trong php

    Bài 9: Hàm (Function) Trong PHP

    Trending Tags

    • Code
      • PHP
      • Java
      • JavaScript
    • Kiến thức
      • All
      • Kiến Thức Internet
      • Kiến Thức Lập Trình
      • Kiến Thức Máy Tính
      • Kỹ Năng Sống
      • Linux
      phuong thuc get post trong php

      Bài 13: Phương thức GET và POST trong PHP

      chuoi string va cac ham xu ly trong php

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      cac ham xu ly mang php

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      mang array trong php

      Bài 10: Mảng (Array) Trong PHP

      ham function trong php

      Bài 9: Hàm (Function) Trong PHP

      lenh va function thuong dung trong php

      Bài 8: lệnh Break, Continue và các hàm (function) exit, die thường dùng trong PHP

    • Phần Mềm
      • All
      • Đa Phương Tiện
      • Đồ Họa
      • Hệ Thống
      • TechSmith
      • Tiện Ích
      • Ứng Dụng
      • Văn Phòng
      adobe incopy cc 2020

      Download Adobe InCopy CC 2020 Full – Chỉnh sửa tài liệu chuyên nghiệp

      adobe illustrator 2020

      Download Adobe Illustrator CC 2020 Full – Tạo logo, banner, tạp chí

      adobe photoshop cc 2020

      Download Free Adobe Photoshop CC 2020 Full Active – Chỉnh Sửa Ảnh Chuyên Nghiệp

      adobe indesign cc 2020

      Download Free Adobe InDesign CC 2020 Full Active

      adobe bridge cc 2020

      Download Adobe Bridge CC 2020 Link Google Drive

      adobe media encoder cc 2020

      Download Adobe Media Encoder CC 2020 Chuyển đổi định dạng Media chuyên nghiệp

    • Công cụ
      • All
      • Internet
      • tool usb
      • Tool Windows
      adobe dreamweaver cc 2020

      Download Adobe Dreamweaver CC 2020 – Phần mềm thiết kế trang web chuyên nghiệp

      acronis true image

      Download Acronis True Image 2020 Full (24.5.1.22510) Giúp Sao lưu và Phục hồi dữ liệu

      vegas pro 17

      MAGIX VEGAS Pro 17.0 Build 353 Full Active 2020 – Phần Mềm Làm Video Phim Chuyên Nghiệp

      Download Anhdv Boot 2019 Và Tạo USB BOOT cứu hộ máy tính đa năng

      Download Anhdv Boot 2019 – Tạo USB BOOT cứu hộ máy tính đa năng

      Download Và Cách Crack Full IDM 6.33

      Download Và Cách Crack Full IDM 6.35 Build 10 Vĩnh Viễn Mới Nhất 2019 – Không Báo Fake Serial [UPDATE]

      Tạo VPS Free Tốc Độ Cao

      Hướng Dẫn Tạo VPS Free Tốc Độ Cao Hạn Dùng 1 Giờ – Hết Hạn 1 Giờ Sau Vẫn Được Tạo VPS Mới Free

    • Thủ Thuật
      • All
      • Active Win & Office
      • Boot
      • Facebook
      • Internet-mạng
      • Thủ Thuật Win 10
      hinh thu nho cua tab chrome

      Bật xem trước hình thu nhỏ của Tab trong Google Chrome

      Khóa Học An Ninh Mạng – Ứng Dụng Python Và Web (Cyber Security – Python and Web)

      Khóa Học An Ninh Mạng – Ứng Dụng Python Và Web (Cyber Security – Python and Web)

      Bộ Video Hướng Dẫn Tăng Tốc Máy Tính Của Bạn (Speeding Up Your PC)

      Bộ Video Hướng Dẫn Tăng Tốc Máy Tính Của Bạn (Speeding Up Your PC)

      chuyen doi giua raid sang ahci

      Cách chuyển đổi SATA Mode, bật AHCI, chuyển đổi giữa RAID sang AHCI, IDE sang AHCI hoặc ngược lại trong Windows 10, 8.1, 8, 7

      download extension dark mode cho zalo tren may tinh

      Hướng dẫn tạo Dark Mode cho Zalo Phiên Bản Chat Web Trên Máy Tính (Extension Dark Mode Zalo)

      tong hop top cac trang rut gon link kiem tien online

      Tổng Hợp Top Các Trang Rút Gọn Link kiếm Tiền Online Tốt Nhất 2019

    • Download
      • All
      • Công Cụ Lập Trình
      • Download Office
      • Download Windows
      • Ghost
      loi port truy cap localhost

      Thay đổi Port sửa lỗi không truy cập vào được localhost và cách tạo thư mục ảo trên WampServer

      adobe dreamweaver cc 2020

      Download Adobe Dreamweaver CC 2020 – Phần mềm thiết kế trang web chuyên nghiệp

      adobe cc 2020

      Download Full Bộ Adobe CC 2020 – Video hướng dẫn cài đặt

      windows 10 1909

      Download Windows 10 Version 1909 Build 18363.418 Consumer Edition (ISO x64-x86)

      doc file excel c sharp

      Mở Đọc File Excel Trong C# Với Microsoft Office Interop Excel dll

      mo doc file word c sharp

      Mở và Đọc File Word Trong C# Với Microsoft Office Interop Word dll

    • Giải trí
      • All
      • Game
      • Hình
      • Nhạc
      • Phim
      • Rubik
      • Truyện
      Child of Light Việt ngữ - Công Chúa Ánh Sáng

      Child of Light Việt ngữ – Công Chúa Ánh Sáng

      Download Game Never Alone Việt Hóa (KISIMA INGITCHUNA)

      Download Game Never Alone Việt Hóa (KISIMA INGITCHUNA)- TÔI KHÔNG CÔ ĐƠN

      Download game Devotion - Thành Tâm Việt Hóa

      Download game Devotion – Thành Tâm Việt Hóa

      Download Game The Stillness of the Wind Full Crack

      Download Game The Stillness of the Wind Full Crack – Sự Tĩnh Lặng Của Gió

      Share code game MegamanX3 viết bằng C++

      Share code game MegamanX3 viết bằng C++

      Doraemon Stand By Me

      Doraemon Stand By Me 2014 Thuyết Minh Tiếng Việt Full HD

    No Result
    View All Result
    • Home
      • Liên Hệ TanHongIT – các bạn có thể liên hệ với TanHongIT.Net Tại Đây
      • Donate – TanHongIT.Net
      • Yêu Cầu Phần Mềm, Thủ Thuật
      • Hướng dẫn tải File, phần mềm và các loại tài liệu khác trên TanHongIT.Net
    • Orther
      • Tool Online
        • Test Code Online
        • EnCoder SVG
        • HTML Converter
      • ShareVui – Online Movies
    • Tài Liệu
      • All
      • Design
      • Development
      • IT & Software
      • LANGUAGE
      • Marketing
      • Office Productivity
      • Phát triển bản thân
      • Sức khoẻ cuộc sống
      • Tài Liệu Mạng
      • Udemy
      phuong thuc get post trong php

      Bài 13: Phương thức GET và POST trong PHP

      chuoi string va cac ham xu ly trong php

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      cac ham xu ly mang php

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      mang array trong php

      Bài 10: Mảng (Array) Trong PHP

      code web nam moi 2020

      Share Code Đếm Ngược Chào Mừng Năm Mới 2020 Với Hiệu Ứng Tuyệt Đẹp

      ham function trong php

      Bài 9: Hàm (Function) Trong PHP

      Trending Tags

      • Code
        • PHP
        • Java
        • JavaScript
      • Kiến thức
        • All
        • Kiến Thức Internet
        • Kiến Thức Lập Trình
        • Kiến Thức Máy Tính
        • Kỹ Năng Sống
        • Linux
        phuong thuc get post trong php

        Bài 13: Phương thức GET và POST trong PHP

        chuoi string va cac ham xu ly trong php

        Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

        cac ham xu ly mang php

        Bài 11: Các hàm xử lý mảng (Array) trong PHP

        mang array trong php

        Bài 10: Mảng (Array) Trong PHP

        ham function trong php

        Bài 9: Hàm (Function) Trong PHP

        lenh va function thuong dung trong php

        Bài 8: lệnh Break, Continue và các hàm (function) exit, die thường dùng trong PHP

      • Phần Mềm
        • All
        • Đa Phương Tiện
        • Đồ Họa
        • Hệ Thống
        • TechSmith
        • Tiện Ích
        • Ứng Dụng
        • Văn Phòng
        adobe incopy cc 2020

        Download Adobe InCopy CC 2020 Full – Chỉnh sửa tài liệu chuyên nghiệp

        adobe illustrator 2020

        Download Adobe Illustrator CC 2020 Full – Tạo logo, banner, tạp chí

        adobe photoshop cc 2020

        Download Free Adobe Photoshop CC 2020 Full Active – Chỉnh Sửa Ảnh Chuyên Nghiệp

        adobe indesign cc 2020

        Download Free Adobe InDesign CC 2020 Full Active

        adobe bridge cc 2020

        Download Adobe Bridge CC 2020 Link Google Drive

        adobe media encoder cc 2020

        Download Adobe Media Encoder CC 2020 Chuyển đổi định dạng Media chuyên nghiệp

      • Công cụ
        • All
        • Internet
        • tool usb
        • Tool Windows
        adobe dreamweaver cc 2020

        Download Adobe Dreamweaver CC 2020 – Phần mềm thiết kế trang web chuyên nghiệp

        acronis true image

        Download Acronis True Image 2020 Full (24.5.1.22510) Giúp Sao lưu và Phục hồi dữ liệu

        vegas pro 17

        MAGIX VEGAS Pro 17.0 Build 353 Full Active 2020 – Phần Mềm Làm Video Phim Chuyên Nghiệp

        Download Anhdv Boot 2019 Và Tạo USB BOOT cứu hộ máy tính đa năng

        Download Anhdv Boot 2019 – Tạo USB BOOT cứu hộ máy tính đa năng

        Download Và Cách Crack Full IDM 6.33

        Download Và Cách Crack Full IDM 6.35 Build 10 Vĩnh Viễn Mới Nhất 2019 – Không Báo Fake Serial [UPDATE]

        Tạo VPS Free Tốc Độ Cao

        Hướng Dẫn Tạo VPS Free Tốc Độ Cao Hạn Dùng 1 Giờ – Hết Hạn 1 Giờ Sau Vẫn Được Tạo VPS Mới Free

      • Thủ Thuật
        • All
        • Active Win & Office
        • Boot
        • Facebook
        • Internet-mạng
        • Thủ Thuật Win 10
        hinh thu nho cua tab chrome

        Bật xem trước hình thu nhỏ của Tab trong Google Chrome

        Khóa Học An Ninh Mạng – Ứng Dụng Python Và Web (Cyber Security – Python and Web)

        Khóa Học An Ninh Mạng – Ứng Dụng Python Và Web (Cyber Security – Python and Web)

        Bộ Video Hướng Dẫn Tăng Tốc Máy Tính Của Bạn (Speeding Up Your PC)

        Bộ Video Hướng Dẫn Tăng Tốc Máy Tính Của Bạn (Speeding Up Your PC)

        chuyen doi giua raid sang ahci

        Cách chuyển đổi SATA Mode, bật AHCI, chuyển đổi giữa RAID sang AHCI, IDE sang AHCI hoặc ngược lại trong Windows 10, 8.1, 8, 7

        download extension dark mode cho zalo tren may tinh

        Hướng dẫn tạo Dark Mode cho Zalo Phiên Bản Chat Web Trên Máy Tính (Extension Dark Mode Zalo)

        tong hop top cac trang rut gon link kiem tien online

        Tổng Hợp Top Các Trang Rút Gọn Link kiếm Tiền Online Tốt Nhất 2019

      • Download
        • All
        • Công Cụ Lập Trình
        • Download Office
        • Download Windows
        • Ghost
        loi port truy cap localhost

        Thay đổi Port sửa lỗi không truy cập vào được localhost và cách tạo thư mục ảo trên WampServer

        adobe dreamweaver cc 2020

        Download Adobe Dreamweaver CC 2020 – Phần mềm thiết kế trang web chuyên nghiệp

        adobe cc 2020

        Download Full Bộ Adobe CC 2020 – Video hướng dẫn cài đặt

        windows 10 1909

        Download Windows 10 Version 1909 Build 18363.418 Consumer Edition (ISO x64-x86)

        doc file excel c sharp

        Mở Đọc File Excel Trong C# Với Microsoft Office Interop Excel dll

        mo doc file word c sharp

        Mở và Đọc File Word Trong C# Với Microsoft Office Interop Word dll

      • Giải trí
        • All
        • Game
        • Hình
        • Nhạc
        • Phim
        • Rubik
        • Truyện
        Child of Light Việt ngữ - Công Chúa Ánh Sáng

        Child of Light Việt ngữ – Công Chúa Ánh Sáng

        Download Game Never Alone Việt Hóa (KISIMA INGITCHUNA)

        Download Game Never Alone Việt Hóa (KISIMA INGITCHUNA)- TÔI KHÔNG CÔ ĐƠN

        Download game Devotion - Thành Tâm Việt Hóa

        Download game Devotion – Thành Tâm Việt Hóa

        Download Game The Stillness of the Wind Full Crack

        Download Game The Stillness of the Wind Full Crack – Sự Tĩnh Lặng Của Gió

        Share code game MegamanX3 viết bằng C++

        Share code game MegamanX3 viết bằng C++

        Doraemon Stand By Me

        Doraemon Stand By Me 2014 Thuyết Minh Tiếng Việt Full HD

      No Result
      View All Result
      Tân Hồng IT
      No Result
      View All Result
      Home Backend

      Bài 13: Phương thức GET và POST trong PHP

      Bài 13 - Học PHP Căn Bản

      Tân Hồng IT by Tân Hồng IT
      06/02/2020
      in Backend, Code, Code Web, Development, Khóa Học, Kiến Thức Internet, Kiến Thức Lập Trình, Learn PHP, PHP, Web Development, Website, Wordpress
      20 Phút đọc
      0
      QUẢNG CÁO

      Tiếp tục series học PHP căn bản, ở bài 13 này chúng ta sẽ học về 2 phương thức truyền tải dữ liệu thông dụng trong mô hình Client-Server đó là Get và Post. Các bạn có thể xem lại khái niệm của Client-Server. 

      phuong thuc get post trong php
      Phương Thức Get và Post Trong PHP

      Như chúng ta đã biết thì đa số các trang web hiện nay đang hoạt động theo mô hình client-server. Việc truyền gửi dữ liệu giữa client và server rất thường xuyên diễn ra và vô cùng quan trọng.

      Khi các bạn đăng nhập hay đăng ký tài khoản, hoặc là các bạn đăng comment, gửi thông báo đến quản trị web thì dữ liệu sẽ được gửi từ client lên Server, vậy làm sao để Server nhận được những thông tin của bạn? Server sẽ nhận được thông qua hai phương thức POST và GET.

      Mục Lục Bài Viết

      • Phương thức GET trong PHP
        • Lưu ý về phương thức GET trong PHP
        • Ví dụ thực hành
      • Phương thức POST trong PHP
        • Phương thức Post trong mô hình Client-Server
          • Phía Client gửi lên
          • Phía Server nhận dữ liệu và trả về
        • Những lưu ý cần biết trong phương thức POST trong PHP
      • Kiểm tra isset với GET và POST trong PHP
      • So sánh giống và khác nhau giữa GET và POST
      • Khi nào nên dùng GET và POST trong PHP
      • Kết thúc

      Phương thức GET trong PHP

      Khi người dùng phía client sử dụng phương thức GET gửi dữ liệu lên server thông qua các tham số (parameter) trên thanh địa chỉ URL của Browser. Các tham số trên URL bắt đầu bằng dấu chấm hỏi ( ? ) và được ngăn cách với nhau bởi dấu và ( & ). Server sẽ phân tích tất cả những thông tin đằng sau dấu hỏi (?) chính là phần dữ liệu mà Client gửi lên.

      Ví dụ: ta có URL http://localhost:82/demowp/?p=7740&preview=true

      Khi truy cập, từ Server sẽ hiểu giá trị p = 7740 và giá trị preview = true.

      Lưu ý 1: khi muốn truyền nhiều cặp giá trị lên Server chúng ta sẽ sử dụng dấu và ( & ), và vị trí các cặp giá trị không quan trọng. Nghĩa là từ ví dụ trên, giá trị preview nằm trước giá trị p cũng được.

      Đó là ví dụ về phần Client truy cập từ thanh địa chỉ URL. Chúng ta bây giờ sẽ chuyên sang các vấn đề trong code PHP.

      Trong code khi các dữ liệu mà Client gửi lên bằng phương thức GET đều được lưu trong một biến toàn cục mà PHP tự tạo ra đó là biến $_GET. ( $_GET là một biến toàn cục lưu trữ dưới dạng mảng bất tuần tự.)

      <?php
      $_GET = [
          'name' => 'TanHongIT',
          'website' => 'tanhongit.net'
      ];
      ?>  //biến $_GET là một mảng chứa nhiều phần tử

      Lưu ý về phương thức GET trong PHP

      • Phương thức GET được giới hạn gửi tối đa chỉ 1024 ký tự.
      • Không bao giờ sử dụng phương thức GET nếu gửi password hoặc thông tin nhay cảm lên Server.
      • GET không thể gửi dữ liệu nhị phân, ví dụ như hình ảnh hoặc các loại tài liệu lên Server.
      • Dữ liệu gửi bởi phương thức GET có thể được truy cập bằng cách sử dụng biến môi trường QUERY_STRING.
      • PHP cung cấp mảng liên hợp $_GET để truy cập tất cả các thông tin đã được gửi bởi phương thức GET.

      Ví dụ thực hành

      Ví dụ 1: Bạn khởi tạo 1 file demo.php nằm trong thư mục WWW của WampServer hoặc tạo trong thư mục htdocs nếu bạn dùng Xampp, sau đó bạn dán đoạn code bên dưới vào.

      <?php
      $_GET = [
          'title' => 'TanHongIT',
          'website' => 'tanhongit.net'
      ];
      ?> 
      <!DOCTYPE html>
      <html lang="en">
      <body>
          <form action="<?php $_PHP_SELF ?>" method="GET">
              <?php foreach ($_GET as $key => $value){  
                  echo $key . ' - ' . $value . '<br>';
              } ?>
              <input type="submit">
          </form>
      </body>
      </html>

      khi truy cập vào http://localhost/demo.php?title=tanhongit&website=tanhongit.net hoặc http://localhost//demo.php thì kết quả đều ra như sau:

      title - TanHongIT
      website - tanhongit.net
      

      Ở ví dụ trên mình sử dụng phương thức GET ngay trong 1 file duy nhất, mình đã sử dụng vòng lặp Foreach để lấy toàn bộ key và value có trong biến $_GET là một mảng có nhiều phần tử.

      GET còn có thể sử dụng để truyền dữ liệu từ file này sang file khác. hãy làm tiếp ví dụ 2.

      Ví dụ 2: Tạo 2 file, 1 file có tên get_demo.php và một file demo.html

      Đầu tiên, ở trong file demo.html ta sẽ tạo 1 form để lấy dữ liệu nhập vào từ bàn phím và gửi lên server.

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <meta http-equiv="X-UA-Compatible" content="ie=edge">
          <title>Document</title>
      </head>
      <body>
          <div class="container">
              <form action="get_demo.php" method="GET"> <!--thêm thuộc tính action chuyển hướng đến file get_demo.php -->
                  <div class="form-group">
                      <label for="">Title</label>
                      <input type="text" class="form-control" id="" placeholder="Nhập vào title..." name="title"> <!--tạo một trường có tên là title để truyền dữ liệu lên file get_demo.php-->
                  </div>
      
                  <div class="form-group">
                      <label for="">Website</label>
                      <input type="text" class="form-control" id="" placeholder="Nhập vào url website..." name="web"> <!--tạo một trường có tên là web để truyền dữ liệu lên file get_demo.php-->
                  </div>
      
                  <button type="submit" class="btn btn-primary">Submit</button>
              </form>
          </div>
      </body>
      </html>

      Ở file demo.html mình có tạo 2 trường nhập liệu trong form có tên là title và web để truyền dữ liệu nhập từ bàn phím vào file get_demo.php

      Tiếp theo ta viết code để phía Server xuất ra màn hình sau khi nó đã nhận dữ liệu được nhập vào từ file demo.html thông qua file get_demo.php

      <?php
      echo 'Kết quả nhập liệu của bạn là: <br>';
      echo 'Title: ' . $_GET['title'] . '<br>';
      echo 'Website: ' . $_GET['web'];

      Hãy test thử bằng cách chạy file demo.html lên theo đường link http://localhost/demo.html sau đó nhập vào các trường dữ liệu và nhấn vào button Submit. Lập tức Server sẽ tự động chuyển link sang file get_demo.php và xuất ra thông tin bạn đã nhập liệu.

      demo get php url method get php

      Lưu ý 2: Vì đây là phương thức GET nên khi truyền dữ liệu bạn sẽ có 2 cách truyền, 1 là truyền dữ liệu từ form sau đó gửi lên Server, 2 là ta có thể truyền tham số trực tiếp thông qua paramter trên địa chỉ URL.

      Ví dụ: http://localhost/get_demo.php?title=hello&web=chaomoinguoi.com

      Kết quả nhận được sau khi Enter sẽ như hình dưới:

      Lưu ý 3: Dùng phương thức GET thì dữ liệu luôn được gửi một cách tường minh, chúng ta có thể thấy mọi thông tin trên URL và có thể chỉnh sửa trực tiếp cho nên nó không bảo mật tốt.
      Vì thế khi muốn tạo dữ liệu nào đó ta không nên sử dụng phương thức GET mà phải dùng POST vì GET luôn để lộ thông tin trên địa chỉ URL nên rất dễ bị hack đánh cắp dữ liệu.

      Phương thức POST trong PHP

      Phương thức POST sẽ trái ngược với phương thức GET về tính bảo mật cũng như tốc độ.

      Về phương thức GET, chúng ta có thể xem thông tin trên thanh địa chỉ URL, dữ liệu được gửi đi bằng GET sẽ thông qua các paramter trên URL. POST thì ngược lại, nó không gửi dữ liệu đi bằng paramter trên URL mà thông qua HTTP header, vì vậy việc bảo mật phụ thuộc vào giao thức HTTP mà website đó đang sử dụng.

      Parameters được truyền trong request body nên có thể truyền dữ liệu lớn, hạn chế tùy thuộc vào cấu hình của Server. Không cache và bookmark được cũng như không được lưu lại trong browser history. POST không có bất kì hạn chế nào về kích thước dữ liệu sẽ gửi, có thể gửi dữ liệu nhị phân, hình ảnh.

      Nội dung dữ liệu được gửi đi bằng phương thức POST sẽ luôn bị ẩn đi và chúng ta không thể thấy được.

      Phương thức Post trong mô hình Client-Server

      Các bạn hãy tìm hiểu và làm ví dụ bên dưới để hiểu cách phương thức POST truyền dữ liệu lên Server như thế nào nhé!

      Phía Client gửi lên

      Với phương thức GET, dữ liệu sẽ được thấy trên URL, nhưng phương thức POST thì hoàn toàn ngược lại, POST sẽ phải gửi dữ liệu qua form HTML và các giá trị sẽ được định nghĩa trong các thẻ input gồm các kiểu (textbox, radio, checkbox, password, textarea, hidden) và được nhận dang thông qua tên (name) của các thẻ input đó.

      Bạn hãy tạo file demo.html trong thư mục WWW của WampServer hoặc tạo trong thư mục htdocs nếu bạn dùng Xampp và chèn đoạn code bên dưới vào.

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <meta http-equiv="X-UA-Compatible" content="ie=edge">
          <title>Document</title>
      </head>
      <body>
          <div class="container">
              <form action="post_demo.php" method="POST"> <!--thêm thuộc tính action chuyển hướng đến file post_demo.php và sử dụng phương thức method = post-->
                  <div class="form-group">
                      <label for="">Title</label>
                      <input type="text" class="form-control" id="" placeholder="Nhập vào title..." name="title"> <!--tạo một trường có tên (name) là title để truyền dữ liệu lên file post_demo.php-->
                  </div>
                  <div class="form-group">
                      <label for="">Website</label>
                      <input type="text" class="form-control" id="" placeholder="Nhập vào url website..." name="web"> <!--tạo một trường có tên (name) là web để truyền dữ liệu lên file post_demo.php-->
                  </div>
                  <button type="submit" class="btn btn-primary">Submit</button>
              </form>
          </div>
      </body>
      </html>

      Phần code trên mục đích dùng để nhập liệu từ phía Client để gửi lên Server. Giờ chúng ta sang phần Server.

      Phía Server nhận dữ liệu và trả về

      Tất cả các dữ liệu gửi bằng phương thức POST đều được lưu trong một biến toàn cục $_POST do PHP tự tạo ra, vì thế từ bây giờ bạn chỉ cần thao tác lấy hoặc gửi dữ liệu thông qua biến $_POST này là được.

      Ở file demo.html mình có tạo 2 trường nhập liệu trong form có tên là title và web để truyền dữ liệu nhập từ bàn phím vào file post_demo.php. Tiếp theo ta sẽ code trên file post_demo.php để lấy dữ liệu và xuất ra màn hình.

      <?php
      echo 'Kết quả nhập liệu của bạn là: <br>';
      echo 'Title: ' . $_POST['title'] . '<br>';
      echo 'Website: ' . $_POST['web'];

      Hãy test thử bằng cách chạy file demo.html lên theo đường link http://localhost/demo.html sau đó nhập vào các trường dữ liệu và nhấn vào button Submit. Lập tức Server sẽ tự động chuyển link sang file post_demo.php và xuất ra thông tin bạn đã nhập liệu.

      demo post php

      Nhưng có một điều khác biệt ở đây bạn cần quan tâm đó là khi sử dụng GET, đường dẫn URL sẽ tiết lộ bất kỳ thông tin mà bạn đã nhập liệu, còn khi đã dùng POST thì bị ẩn.

      Điều này chứng minh POST sẽ có tính bảo mật hơn GET và POST sẽ phù hợp với các chức năng về tạo dữ liệu, đăng ký, đăng nhập,…

      Những lưu ý cần biết trong phương thức POST trong PHP

      • Phương thức POST không có bất kì hạn chế nào về kích thước dữ liệu sẽ gửi.
      • Phương thức POST có thể sử dụng để gửi ASCII cũng như dữ liệu nhị phân.
      • Dữ liệu gửi bởi phương thức POST thông qua HTTP header, vì vậy việc bảo mật phụ thuộc vào giao thức HTTP. Bằng việc sử dụng Secure HTTP, bạn có thể chắc chắn rằng thông tin của mình là an toàn.
      • PHP cung cấp mảng liên hợp $_POST để truy cập tất cả các thông tin được gửi bằng phương thức POST.

      Kiểm tra isset với GET và POST trong PHP

      Trước khi lấy một dữ liệu nào đó từ client bạn phải kiểm tra nó đã tồn tại không rồi mới lấy.Vì nếu không kiểm tra trước khi lấy, phía client chưa cung cấp đầy đủ dữ liệu mà server lại nhận thì sẽ có lỗi ngay. Vì thế ở những trường hợp mà ta không chắc chắn một biến luôn tồn tại hoặc một trường dữ liệu được nhập đầy đủ thì hãy kiểm tra nó trước khi gửi request.

      Để kiểm tra ta sẽ dùng hàm isset(). Hàm isset() trong PHP có chức năng kiểm tra xem biến có tồn tại hay không. Nó sẽ trả về TRUE nếu biến đó có tồn tại và ngược lại FALSE nếu biến đó không tồn tại. Hàm isset() sẽ dùng cho cả 2 phương thức GET và POST.

      Cú pháp: isset($bien);

      Trong đó: $bien là biến mà bạn muốn kiểm tra sự tồn tại.

      Từ ví dụ về phần POST trong PHP ở trên, nếu bạn trực tiếp truy cập vào http://localhost/post_demo.php mà chưa nhập đầy đủ thông tin ở http://localhost/demo.html thì sẽ xuất hiện lỗi ngay.

      Vậy từ ví dụ trên ta chỉ cần thêm vào file file post_demo.php như sau:

      <?php
      echo 'Kết quả nhập liệu của bạn là: <br>';
      if (isset($_POST['title']) && isset($_POST['web'])) {
          echo 'Title: ' . $_POST['title'] . '<br>';
          echo 'Website: ' . $_POST['web'];
      }

      Bây giờ bạn hãy thử truy cập lại http://localhost/post_demo.php , nếu chưa đươc nhập đủ dữ liệu ở http://localhost/demo.html thì nó sẽ không hiện gì cả, còn nhập đầy đủ các trường dữ liệu thì nó mới hiện lên cho ta xem.

      Kết luận: Hàm isset() thật sự rất hữu ích đối với chúng ta trong việc ràng buộc dữ liệu nên các bạn hãy thường xuyên sử dụng để hiểu rõ và áp dụng dễ dàng hơn sau này nhé!

      So sánh giống và khác nhau giữa GET và POST

      GET và POST hầu như chẳng có gì giống nhau ngoài tác dụng là truyền tải dữ liệu lên Server.

      Cho nên mình sẽ nói về những đặc điểm khác nhau của 2 phương thức này nhé!

      1. Giới hạn dữ liệu: GET giới hạn gửi tối đa chỉ 1024 ký tự. Còn POST không có bất kì hạn chế nào về kích thước dữ liệu sẽ gửi.
      2. Khả năng: Phương thức POST có thể sử dụng để gửi ASCII cũng như dữ liệu nhị phân, các loại tệp, hình ảnh còn GET thì không.
      3. Tốc độ: GET nhanh hơn rất nhiều so với POST về quá trình thực thi – vì dữ liệu gửi đi luôn được web browser lưu cached lại. Khi dùng phương thức POST thì server luôn thực thi và trả kết quả cho client, còn dùng GET thì web browser cached sẽ kiểm tra có kết quả tương ứng đó trong bộ nhớ cached chưa, nếu có thì trả về ngay mà không cần đưa tới server.
      4. Bảo mật: Phương thức POST bảo mật hơn GET vì dữ liệu được gửi ngầm, không xuất hiện trên URL, mắt thường không nhìn thấy được và dữ liệu cũng không được lưu lại. Trong khi đó với GET thì dữ liệu gửi đi được tường minh bạn có thể hiển thị lại được các dữ liệu này trên URL.

      Link tham khảo: https://www.diffen.com/difference/GET-vs-POST-HTTP-Requests

      Khi nào nên dùng GET và POST trong PHP

      Cả 2 phương thức đều có những ưu và nhược điểm khác nhau, vậy khi nào chúng ta nên dùng GET và khi nào nên dùng POST.

      Phương thức GET có tốc độ thực thi nhanh như độ bảo mật lại rất kém nên GET chỉ nên dùng cho các công việc lấy dữ liệu từ server về client, như vậy quá trình truy xuất sẽ nhanh hơn.

      Đối với POST sẽ có độ bảo mật cao nên phù hợp với các công việc tạo dữ liệu, upload, truyền tải thông tin lên server, những công việc mang tính bảo mật cao.

      Ví dụ:

      • Khi upload hình ảnh lên web thì ta sẽ dùng POST, còn khi muốn tải ảnh từ Web server về ta sẽ dùng GET.
      • Khi đăng ký, đăng nhập hoặc comment vào một website ta sẽ dùng POST, còn khi lấy tin bài viết từ web ra thì ta dùng GET.
      • Khi request sử dụng câu lệnh select thì dùng GET, khi request có sử dụng lệnh insert update, delete thì nên dùng POST.
      • Ngoài ra khi cần xử lý các thông tin nhạy cảm ví dụ như email, password thì bạn phải sử dụng POST.

      Kết thúc

      Qua bài viết trên mình đã nếu ra những nội dung liên quan đến 2 phương thức method truyền tải dữ liệu thông dụng trong PHP là GET và POST. Các bạn cần phải hiểu rõ những tính chất của mỗi phương thức này và khi nào nên dùng nó tùy vào từng trường hợp cụ thể.

      Nhưng có một điều lưu ý rằng những nội dung, dữ liệu quan trọng hoặc cần truyền tải một loại thông tin gì đó lên server thì ta phải dùng POST để tăng tính bảo mật cho Website nhé!

      Xem thêm:

      • Lộ trình học PHP Căn Bản
      • Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP
      • Bài 11: Các hàm xử lý mảng (Array) trong PHP
      • Bài 10: Mảng (Array) Trong PHP
      • Bài 9: Hàm (Function) Trong PHP
      • Cách sửa lỗi error establishing a database connection cho website
      • Mở Đọc File Excel Trong C# Với Microsoft Office Interop Excel dll
      Nếu các bạn cảm thấy Website TanHongIT.Net thật sự hữu ích mình mong các bạn có thể chia sẻ những bài viết đến cho cộng đồng cùng thao khảo nhé. Cảm ơn các bạn !!!
      Các bạn có bất kì thắc mắc cần được hỗ trợ hay yêu cầu các phần mềm, thủ thuật, khoá học,… thì cứ để lại comment bên dưới bài viết hoặc liên hệ qua fanpage của TanHongIT để được hỗ trợ nhé! Mình sẽ cố gắng chia sẻ cho các bạn mọi thứ cần thiết nhất!
      CHÚC CÁC BẠN THÀNH CÔNG
      5 / 5 ( 1 vote )
      Tags: BackendCodeCode WebKhóa HọcKiến thứcKiến Thức Lập TrìnhLearn PHPLinuxPHPWeb DevelopmentWebsite
      ShareTweetSend
      Bài viết trước

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      Tân Hồng IT

      Tân Hồng IT

      Không có một lời khuyên hay câu triết lý nào có đủ khả năng để áp đặt vào mọi hoàn cảnh trong cuộc sống của chúng ta cả. Nó luôn có những ngoại lệ riêng biệt...

      Liên quan Posts

      chuoi string va cac ham xu ly trong php
      Backend

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      25/01/2020
      cac ham xu ly mang php
      Backend

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      19/01/2020
      mang array trong php
      Backend

      Bài 10: Mảng (Array) Trong PHP

      16/01/2020
      code web nam moi 2020
      Code

      Share Code Đếm Ngược Chào Mừng Năm Mới 2020 Với Hiệu Ứng Tuyệt Đẹp

      14/01/2020
      ham function trong php
      Backend

      Bài 9: Hàm (Function) Trong PHP

      14/01/2020
      lenh va function thuong dung trong php
      Backend

      Bài 8: lệnh Break, Continue và các hàm (function) exit, die thường dùng trong PHP

      10/01/2020 - Updated on 11/01/2020
      vong lap foreach trong php
      Code

      Bài 7: Vòng lặp Foreach trong PHP (Các loại vòng lặp phần 2)

      01/01/2020 - Updated on 03/01/2020
      vong lap trong php
      Code

      Bài 6: Các loại Vòng lặp trong PHP (for, while, do while)

      28/12/2019

      Leave a Reply

      Kết nối với
      I allow to create an account
      When you login first time using a Social Login button, we collect your account public profile information shared by Social Login provider, based on your privacy settings. We also get your email address to automatically create an account for you in our website. Once your account is created, you'll be logged-in to this account.
      Không đồng ýĐồng ý
      avatar
      This comment form is under antispam protection
      Kết nối với
      I allow to create an account
      When you login first time using a Social Login button, we collect your account public profile information shared by Social Login provider, based on your privacy settings. We also get your email address to automatically create an account for you in our website. Once your account is created, you'll be logged-in to this account.
      Không đồng ýĐồng ý
      avatar
      This comment form is under antispam protection
        Subscribe  
      Thông báo về
      • Trending
      • Comments
      • Latest
      Tải Và Cách Crack IDM 6.32

      Tải Và Cách Crack IDM 6.35 Build 10 Vĩnh Viễn Mới Nhất 2019 – Không Báo Fake Serial [UPDATE]

      27/11/2018
      IDM Full Toolkit - Crack IDM Tiện Lợi - Không Báo Fake Serial

      IDM Full Toolkit – Crack IDM Tiện Lợi – Không Báo Fake Serial

      10/08/2018
      Download Và Cách Crack Full IDM 6.33

      Download Và Cách Crack Full IDM 6.35 Build 10 Vĩnh Viễn Mới Nhất 2019 – Không Báo Fake Serial [UPDATE]

      07/05/2019
      Download DLC Boot 2019 v3.6 - Bộ Công Cụ Tạo USB Boot Đa Năng Cứu Hộ Máy Tính, PC

      Download DLC Boot 2019 v3.6 – Bộ Công Cụ Tạo USB Boot Đa Năng Cứu Hộ Máy Tính, PC

      15/04/2019

      Cách đổi trạng thái biểu tượng cảm xúc Angry thành “Dislike ” trên Facebook

      124

      Chia sẻ Khoá học Adobe InDesign CC – Hướng dẫn đầy đủ cho bạn về InDesign

      32

      Chia sẻ khóa học Cách giải khối Rubik 3×3 cho người mới bắt đầu

      26

      [UDEMY] Chia sẻ Khoá học 15 cách học tiếng anh – 15 Ways To Learn English

      24
      phuong thuc get post trong php

      Bài 13: Phương thức GET và POST trong PHP

      06/02/2020
      chuoi string va cac ham xu ly trong php

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      25/01/2020
      cac ham xu ly mang php

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      19/01/2020
      mang array trong php

      Bài 10: Mảng (Array) Trong PHP

      16/01/2020

      Bài Viết Mới

      phuong thuc get post trong php

      Bài 13: Phương thức GET và POST trong PHP

      06/02/2020
      chuoi string va cac ham xu ly trong php

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      25/01/2020
      cac ham xu ly mang php

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      19/01/2020
      mang array trong php

      Bài 10: Mảng (Array) Trong PHP

      16/01/2020
      code web nam moi 2020

      Share Code Đếm Ngược Chào Mừng Năm Mới 2020 Với Hiệu Ứng Tuyệt Đẹp

      14/01/2020
      ham function trong php

      Bài 9: Hàm (Function) Trong PHP

      14/01/2020

      Mới Cập Nhật

      phuong thuc get post trong php

      Bài 13: Phương thức GET và POST trong PHP

      06/02/2020
      chuoi string va cac ham xu ly trong php

      Bài 12: Chuỗi (String) Và Các Hàm Xử Lý Chuỗi Trong PHP

      25/01/2020
      cac kieu du lieu php

      Bài 3: Những kiểu dữ liệu trong PHP

      07/12/2019
      cac ham xu ly mang php

      Bài 11: Các hàm xử lý mảng (Array) trong PHP

      19/01/2020
      mang array trong php

      Bài 10: Mảng (Array) Trong PHP

      16/01/2020
      code web nam moi 2020

      Share Code Đếm Ngược Chào Mừng Năm Mới 2020 Với Hiệu Ứng Tuyệt Đẹp

      14/01/2020
      Tân Hồng IT

      Tân Hồng IT là Trang Chia sẻ Kiến Thức, Tài Liệu, Khóa Học, Công Nghệ Thông Tin, Phần Mềm, Thủ Thuật, Tiện Ích Máy Tính

      DMCA.com Protection Status

      Donate – Xin Ủng Hộ Đóng Góp

      DONATE
      Hung1001 | LinuxTeamVN
      • About
      • Donate
      • Contact
      • Download File
      • Request
      • Other

      © 2019 Facebook - Chia sẻ Kiến Thức, Công Nghệ Thông Tin , Phần Mềm, Thủ Thuật, Tiện Ích Máy Tính Tân Hồng IT.

      No Result
      View All Result
      • Home
        • Donate
        • Liên Hệ Tân Hồng IT
        • Yêu Cầu Phần Mềm, Thủ Thuật
        • Hướng dẫn tải File
      • Tài Liệu
      • Phần Mềm
      • Công cụ
      • Thủ Thuật
      • Download
      • Giải trí
      • Kiến thức

      © 2019 Facebook - Chia sẻ Kiến Thức, Công Nghệ Thông Tin , Phần Mềm, Thủ Thuật, Tiện Ích Máy Tính Tân Hồng IT.

      wpDiscuz