Sangat sering menjadi perlu untuk mentransfer data dari browser klien ke file server dengan skrip untuk memproses data ini. Mari kita lihat bagaimana mengatur transfer parameter php ke skrip.
Itu perlu
Pengetahuan dasar bahasa PHP dan HTML
instruksi
Langkah 1
Untuk mengangkut data dari formulir web di HTTP (HyperText Transfer Protocol) dua metode disediakan - GET dan POST. Mereka berbeda dalam cara mereka ditransmisikan dari aplikasi klien (browser) ke aplikasi server (skrip php yang dapat dieksekusi). Metode GET menggunakan bilah alamat untuk ini. Artinya, nama dan nilai variabel yang diteruskan ke sana ditambahkan langsung ke alamat skrip (atau URL - Uniform Resource Locator) melalui tanda tanya (?). Misalnya, URL mungkin terlihat seperti ini:
Di sini, skrip search.php dilewatkan variabel bernama num dengan nilai 30, variabel newwindow dengan nilai 1, dan variabel safe dengan nilai off. Server, setelah menerima permintaan seperti itu, oleh "?" memisahkan alamat file, dan membagi yang lainnya menjadi pasangan nama dan nilai variabel. Pasangan yang dihasilkan diisi dalam array $ _GET, dari mana skrip php yang ditentukan dalam alamat akan dapat mengekstraknya. Dalam bentuknya yang paling sederhana, kode html formulir untuk mengirim data ini dari browser ke server menggunakan metode GET mungkin terlihat seperti ini:
Dan skrip php paling sederhana untuk menerima data ini adalah seperti ini:
<? php
$ jumlah = $ _GET ['jumlah'];
$ jendela baru = $ _GET ['jendela baru'];
$ aman = $ _GET ['aman'];
?>
Kerugian paling signifikan dari melewatkan variabel menggunakan metode GET:
- jumlah data terbatas, karena panjang URL tidak boleh melebihi 255 karakter;
- tidak semua karakter kode html dapat ditransfer dengan metode ini;
- data yang dikirimkan dapat dilihat oleh pengguna, yang tidak selalu dapat diterima dari sudut pandang keamanan;
Langkah 2
Ketidaknyamanan dan keterbatasan ini dapat dihindari dengan menggunakan metode lain - POST. Ini menggunakan area khusus dari paket jaringan untuk mentransfer data - header. Dalam semua hal lain, perbedaan antara metode ini minimal - dalam bentuk pengiriman data di atas, hanya nama metode yang akan berubah:
Dan dalam skrip php, hanya nama array data:
<? php
$ angka = $ _POST ['angka'];
$ jendela baru = $ _POST ['jendela baru'];
$ aman = $ _POST ['aman'];
?>