1 formulir 2 tindakan php

Setiap formulir HTML berhubungan dengan sisi server dengan atribut tindakan. Atribut tindakan HTML digunakan untuk menentukan ke mana data formulir akan dikirim ke server setelah pengiriman formulir. Karena tujuan data kita disimpan dalam atribut tindakan, setiap tombol akan membawa kita ke lokasi yang sama. Untuk mengatasi kesulitan ini, kita harus menggunakan atribut formaction dari input dan tombol HTML

Mendekati. Atribut formaction digunakan untuk menentukan ke mana harus mengirim data formulir. Setelah penyerahan formulir, atribut formaction dipanggil. Data formulir akan dikirim ke server setelah penyerahan formulir. Ini mengesampingkan fitur atribut aksi dari suatu elemen. Kami akan menerapkan masalah kami menggunakan atribut 'formaction' ini

Saat pengguna mengisi formulir di atas dan mengklik tombol kirim, data formulir dikirim untuk diproses ke file PHP bernama "selamat datang. php". Data formulir dikirim dengan metode HTTP POST

Untuk menampilkan data yang dikirimkan, Anda cukup mengulang semua variabel. Selamat datang. php" tampilannya seperti ini


Selamat datang

Alamat email Anda adalah


Outputnya bisa seperti ini

Selamat datang John
Alamat email Anda adalah john. doe@contoh. com

Hasil yang sama juga dapat dicapai dengan menggunakan metode HTTP GET

Contoh



Nama.

Surel.



Jalankan Contoh ยป

dan "welcome_get. php" tampilannya seperti ini


Selamat datang

Alamat email Anda adalah


Kode di atas cukup sederhana. Namun, hal yang paling penting hilang. Anda perlu memvalidasi data formulir untuk melindungi skrip Anda dari kode berbahaya

Pikirkan KEAMANAN saat memproses formulir PHP

Halaman ini tidak berisi validasi formulir apa pun, ini hanya menunjukkan bagaimana Anda dapat mengirim dan mengambil data formulir

Namun, halaman selanjutnya akan menunjukkan cara memproses formulir PHP dengan mempertimbangkan keamanan. Validasi data formulir yang tepat penting untuk melindungi formulir Anda dari peretas dan pengirim spam



DAPATKAN vs. POS

Baik GET dan POST membuat array (mis. g. larik( kunci1 => nilai1, kunci2 => nilai2, kunci3 => nilai3,. )). Larik ini menampung pasangan kunci/nilai, di mana kunci adalah nama kontrol formulir dan nilai adalah data masukan dari pengguna

Baik GET dan POST diperlakukan sebagai $_GET dan $_POST. Ini adalah superglobal, yang artinya selalu dapat diakses, apa pun cakupannya - dan Anda dapat mengaksesnya dari fungsi, kelas, atau file apa pun tanpa harus melakukan sesuatu yang khusus

$_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


Kapan menggunakan GET?

Informasi yang dikirim dari formulir dengan metode GET dapat dilihat oleh semua orang (semua nama dan nilai variabel ditampilkan di URL). GET juga memiliki batasan jumlah informasi yang akan dikirim. Batasannya sekitar 2000 karakter. Namun, karena variabel ditampilkan di URL, halaman dapat di-bookmark. Ini dapat berguna dalam beberapa kasus

GET dapat digunakan untuk mengirim data yang tidak sensitif

Catatan. GET TIDAK PERNAH digunakan untuk mengirim kata sandi atau informasi sensitif lainnya


Kapan menggunakan POST?

Informasi yang dikirim dari formulir dengan metode POST tidak terlihat oleh orang lain (semua nama/nilai disematkan di dalam badan permintaan HTTP) dan tidak memiliki batasan jumlah informasi yang akan dikirim

Apalagi POST mendukung fungsionalitas lanjutan seperti dukungan untuk input biner multi-bagian saat mengunggah file ke server

Namun, karena variabel tidak ditampilkan di URL, halaman tidak dapat di-bookmark

Pengembang lebih memilih POST untuk mengirim data formulir

Selanjutnya, mari kita lihat bagaimana kita dapat memproses formulir PHP dengan cara yang aman


Latihan PHP

Uji Diri Anda Dengan Latihan

Latihan

Jika formulir di bagian putih di bawah ini dikirimkan, bagaimana bisa, selamat datang. php, menampilkan nilai dari bidang "nama depan"?

Salah satu fitur PHP yang paling kuat adalah caranya menangani formulir HTML. Konsep dasar yang penting untuk dipahami adalah setiap elemen form akan secara otomatis tersedia untuk skrip PHP Anda. Silakan baca bagian manual tentang Variabel dari sumber eksternal untuk informasi lebih lanjut dan contoh penggunaan formulir dengan PHP. Berikut adalah contoh formulir HTML

Contoh #1 Bentuk HTML sederhana

 

Your name:

Your age:

Tidak ada yang spesial dari formulir ini. Ini adalah bentuk HTML langsung tanpa tag khusus apa pun. Saat pengguna mengisi formulir ini dan menekan tombol kirim, tindakannya. halaman php dipanggil. Dalam file ini Anda akan menulis sesuatu seperti ini

Contoh #2 Mencetak data dari formulir kami

Hi .
You are years old.

Contoh keluaran dari skrip ini mungkin

Hi Joe. You are 22 years old.
_

Terlepas dari bagian htmlspecialchars() dan (int), harus jelas apa fungsinya. htmlspecialchars() memastikan setiap karakter khusus dalam html dikodekan dengan benar sehingga orang tidak dapat menyuntikkan tag HTML atau Javascript ke halaman Anda. Untuk bidang umur, karena kita tahu itu adalah angka, kita bisa langsung ke int yang secara otomatis akan menghilangkan karakter yang tersesat. Anda juga dapat meminta PHP melakukan ini untuk Anda secara otomatis dengan menggunakan ekstensi filter. Variabel $_POST['name'] dan $_POST['age'] secara otomatis diatur untuk Anda oleh PHP. Sebelumnya kita menggunakan $_SERVER superglobal; . Perhatikan bagaimana metode formulir kita adalah POST. Jika kita menggunakan metode GET maka informasi formulir kita akan berada di superglobal $_GET sebagai gantinya. Anda juga dapat menggunakan $_REQUEST superglobal, jika Anda tidak peduli dengan sumber data permintaan Anda. Ini berisi informasi gabungan dari data GET, POST dan COOKIE

Anda juga dapat menangani masukan XForms dalam PHP, meskipun Anda akan merasa nyaman dengan formulir HTML yang didukung dengan baik untuk beberapa waktu. Meskipun bekerja dengan XForms bukan untuk pemula, Anda mungkin tertarik dengannya. Kami juga memiliki pengantar singkat untuk menangani data yang diterima dari XForms di bagian fitur kami