Bagaimana cara kerja posting di php?

Pada artikel ini, kita akan mengetahui apa itu metode HTTP GET dan POST di PHP, bagaimana menerapkan metode HTTP ini & penggunaannya, dengan memahaminya melalui contoh

HTTP. Hypertext Transfer Protocol (HTTP) dirancang untuk memungkinkan komunikasi antara klien dan server. HTTP berfungsi sebagai protokol respons permintaan antara klien dan server. Browser web mungkin klien, dan aplikasi di komputer yang menghosting situs web mungkin server. Klien (browser) mengirimkan permintaan HTTP ke server; . Tanggapan berisi informasi status tentang permintaan dan mungkin juga berisi konten yang diminta

Ada 2 metode permintaan HTTP

  • DAPATKAN. Meminta data dari sumber daya tertentu
  • POS. Mengirimkan data untuk diproses ke sumber daya tertentu

Kami akan memahami kedua metode ini secara rinci melalui contoh

Metode DAPATKAN. Dalam metode GET, data dikirim sebagai parameter URL yang biasanya berupa string pasangan nama dan nilai yang dipisahkan oleh ampersand (&). Secara umum, URL dengan data GET akan terlihat seperti ini

Contoh. Perhatikan contoh di bawah ini

http://www.example.com/action.php?name=Sam&weight=55 

Di sini, bagian tebal di URL menunjukkan parameter GET dan bagian miring menunjukkan nilai parameter tersebut. Lebih dari satu parameter=nilai dapat disematkan di URL dengan digabungkan dengan ampersand (&). Seseorang hanya dapat mengirim data teks sederhana melalui metode GET

Contoh. Contoh ini mengilustrasikan metode HTTP GET di PHP

HTML




<?php

  error_reporting(0);

  if( $_GET["name"] || $_GET["weight"] )

  {

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
0
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
1

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
0
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
3

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
0
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
5

  

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
7

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_8

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_9<?0<?1

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_9<?3<?1

  

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
9<?7 <?8

________31______9php0php1 php2php3php4 php5php3php7 ________32______8

________31______9  0php1 php2php3php4 php5php3  7 ________32______8

  9

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
9php1 php2php3error_reporting(0);4 php8

  error_reporting(0);7<?7<?1

error_reporting(0);7<?3<?1

error_reporting(0);7<?0<?1

Keluaran

Bagaimana cara kerja posting di php?

DAPATKAN() metode

Keuntungan

  • Karena data yang dikirim oleh metode GET ditampilkan di URL, dimungkinkan untuk mem-bookmark halaman dengan nilai string kueri tertentu
  • Permintaan GET dapat di-cache dan permintaan GET tetap ada di riwayat browser
  • Permintaan GET dapat di-bookmark

Kekurangan

  • Metode GET tidak cocok untuk meneruskan informasi sensitif seperti nama pengguna dan kata sandi, karena ini sepenuhnya terlihat dalam string kueri URL serta berpotensi disimpan dalam memori browser klien sebagai halaman yang dikunjungi
  • Karena metode GET menetapkan data ke variabel lingkungan server, panjang URL dibatasi. Jadi, ada batasan jumlah data yang akan dikirim

Metode POST. Dalam metode POST, data dikirim ke server sebagai paket dalam komunikasi terpisah dengan skrip pemrosesan. Data yang dikirim melalui metode POST tidak akan terlihat di URL.  

Contoh. Perhatikan contoh di bawah ini

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_

String kueri (nama/berat) dikirim dalam badan pesan HTTP dari permintaan POST

Contoh. Contoh ini mengilustrasikan metode HTTP POST di PHP. Di sini, kami telah menggunakan fungsi preg_match() untuk mencari string untuk sebuah pola, mengembalikan nilai true jika ada pola, jika tidak mengembalikan false

HTML




<?php

  8error_reporting(0);

  8if( $_GET["name"] || $_GET["weight"] )1

________1

http://www.example.com/action.php?name=Sam&weight=55 
_38_______

if( $_GET["name"] || $_GET["weight"] )4if( $_GET["name"] || $_GET["weight"] )5

if( $_GET["name"] || $_GET["weight"] )6{

________33

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_36_______9

if( $_GET["name"] || $_GET["weight"] )4

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
7

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
0  3

________1

http://www.example.com/action.php?name=Sam&weight=55 
_33_______5

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
0
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
5

if( $_GET["name"] || $_GET["weight"] )6

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
7

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_8

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_9<?0<?1

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
_9<?3{6

  

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
9<?7
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
00

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
01php0php1 php2 php3php4 php5 php3php7 ________32______8

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
01
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
12php1 php2 php3php4 php5 php3  7 ________32______8

POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
21
POST /test/demo_form.php HTTP/1.1 
Host: gfs.com 
SAM=451&MAT=62 
9php1 php2 php3error_reporting(0);4 php8

  error_reporting(0);7<?7<?1

error_reporting(0);7<?3<?1

error_reporting(0);7<?0<?1

Keluaran

Bagaimana cara kerja posting di php?

metode POST()

Keuntungan

  • Ini lebih aman daripada GET karena informasi yang dimasukkan pengguna tidak pernah terlihat di string kueri URL atau di log server
  • Ada batas yang jauh lebih besar pada jumlah data yang dapat dilewatkan dan seseorang dapat mengirim data teks serta data biner (mengunggah file) menggunakan POST

Kekurangan

  • Karena data yang dikirim oleh metode POST tidak terlihat di URL, jadi tidak mungkin untuk mem-bookmark halaman dengan kueri tertentu
  • Permintaan POST tidak pernah di-cache
  • Permintaan POST tidak tersimpan dalam riwayat browser

Silakan merujuk ke artikel Perbedaan antara HTTP GET dan Metode POST untuk perbedaan di antara keduanya secara mendetail

Bagaimana cara kerja $_ POST?

Variabel $_POST mengumpulkan data dari formulir HTML melalui metode POST . Ketika pengguna mengisi data dalam formulir PHP dan mengirimkan data yang dikirim dapat dikumpulkan dengan Metode _POST di PHP. Metode Post mentransfer informasi melalui Header.

Apa itu $_ GET dan $_ POST?

$_GET adalah larik variabel yang diteruskan ke skrip saat ini melalui parameter URL. $_POST adalah larik variabel yang diteruskan ke skrip saat ini melalui metode HTTP POST .

Mengapa kita menggunakan metode POST di PHP?

Metode POST berguna untuk mengirim informasi sensitif apa pun karena informasi yang dikirim menggunakan metode POST tidak dapat dilihat oleh siapa pun . Tidak ada batasan ukuran data yang akan dikirim menggunakan Metode POST. Anda dapat mengirim sejumlah besar informasi menggunakan metode ini.

Bagaimana cara MENDAPATKAN data POST di PHP?

Dalam PHP, kita dapat menggunakan metode $_POST sebagai variabel superglobal yang dioperasikan untuk mengelola data formulir . Setelah kita klik tombol submit dan halaman akan mengirimkan data melalui metode post.