Untuk tujuan ini, formulir dibuat yang nilainya akan dikirim secara otomatis, dan di halaman target, skrip mengambil nilai yang dikirim
Kami telah melihat cara membuat formulir, kami akan merinci di sini cara mengekstrak data yang dikirimkan
1) Memahami format parameter URL
Tiga simbol digunakan untuk menentukan serangkaian parameter yang akan dilewati
? concatenates the URL and the string of parameters. & separates multiple parameters. = assigns a value to the variable.Contoh
//www.xul.fr/demo.html?login="me"&password="1234"_Dalam contoh ini, kami memiliki dua parameter, login dan kata sandi, yang diberi nilai "me" dan "1234"
2) Nilai dikirim dari formulir, ke server
Anda tidak ada hubungannya untuk mengirim nilai. semua variabel dan nilai dalam formulir dikirim secara otomatis dengan menyediakan tindakan formulir adalah halaman yang akan dimuat
Atribut "nama" dari setiap item formulir akan memberikan nama variabel dan atribut "nilai" nilainya
...various widgets...Lihat di sumber formulir di bagian bawah
Metode GET menambahkan data ke URL, sedangkan metode POST akan mengirimkannya secara langsung
Mengirim data tanpa formulir
Untuk meneruskan parameter ke halaman lain atau skrip tanpa menampilkan formulir (tetapi dengan tag formulir), kami menggunakan bidang "tersembunyi"
Formulir tak terlihat ini akan diteruskan ke halaman lain. html parameternya. namavar=12345
3) Mengekstraksi data yang diterima dari URL di halaman
Lokasinya. atribut pencarian berisi rantai parameter, masih harus dianalisis
Berikut adalah kode lengkap untuk memproses data yang dikirim
_Penjelasan
- lokasi. pencarian adalah properti yang menyimpan daftar parameter
- substring(1) melewatkan ?
- split("&") membagi string dan mengembalikan array yang elemennya adalah parameter
- array ini ditugaskan ke variabel "parameter". Kita sekarang dapat mengakses elemen individual dengan mensubskrip array. Parameter[0] adalah elemen pertama
- kita harus membagi lagi parameter menjadi array kecil lain yang menyimpan nama variabel dan nilainya
- dalam contoh ini, kita hanya membutuhkan nilai, jadi kita mensubskrip larik kecil ke item kedua, temp[1]
- fungsi unescape mengubah karakter khusus
- kami telah menetapkan variabel l dengan nilai login dan variabel p dengan kata sandi
- login ditulis di bidang log berkat metode getElementById
- dan kata sandi ke kolom pass
4) Memperbarui halaman dengan data yang diterima
Dalam contoh ini, saya kira kita ingin menulis data ke halaman yang dimuat dengan parameter
Variabel login telah ditetapkan dalam kode sebelumnya
Dua bidang telah ditentukan di halaman
Bidang diidentifikasi oleh properti id. Untuk mengisinya dengan data, kita harus menggunakan metode DOM getElementById("") dan properti innerHTML
When using the http_build_query function to create a URL query from an array for use in something like curl_setopt($ch, CURLOPT_POSTFIELDS, $post_url), be careful about the url encoding.
In my case, I simply wanted to pass on the received $_POST data to a CURL's POST data, which requires it to be in the URL format. If something like a space [ ] goes into the http_build_query, it comes out as a +. If you're then sending this off for POST again, you won't get the expected result. This is good for GET but not POST.
Instead you can make your own simple function if you simply want to pass along the data:
$post_url = '';
foreach ($_POST AS $key=>$value)
$post_url .= $key.'='.$value.'&';
$post_url = rtrim($post_url, '&');
?>
You can then use this to pass along POST data in CURL.
$ch = curl_init($some_url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_url);
curl_exec($ch);
?>
Note that at the final page that processes the POST data, you should be properly filtering/escaping it.
Parameter dari string URL dapat diambil di PHP menggunakan fungsi parse_url() dan parse_str()
Catatan. URL halaman dan parameter dipisahkan oleh ?
parse_url() Fungsi. Fungsi parse_url() digunakan untuk mengembalikan komponen URL dengan menguraikannya. Itu mem-parsing URL dan mengembalikan array asosiatif yang berisi berbagai komponennya
Sintaksis.
parse_url( $url, $component = -1 )_parse_str() Fungsi. Fungsi parse_str() digunakan untuk mengurai string kueri menjadi variabel. String yang diteruskan ke fungsi ini untuk penguraian dalam format string kueri yang diteruskan melalui URL
Sintaksis.
parse_str( $string, $array )Mendekati. Parsing string URL menggunakan fungsi parse_url() yang akan mengembalikan array asosiatif yang berisi berbagai komponen (URL yang diteruskan). Kueri array dikembalikan oleh fungsi parse_url() yang berisi string kueri URL
Contoh di bawah ini menggunakan fungsi parse_url() dan parse_str() untuk mendapatkan parameter dari string URL.
Contoh 1.
PHP
<?php
// Initialize URL to the variable
$url ='//www.geeksforgeeks.org?name=Tonny';
parse_str( $string, $array )0
parse_str( $string, $array )1
parse_str( $string, $array )2
parse_str( $string, $array )3
parse_str( $string, $array )4 =parse_str( $string, $array )6parse_str( $string, $array )7$urlparse_str( $string, $array )9
Hi Tonny_0
Hi Tonny_1
Hi Tonny2parse_str( $string, $array )7parse_str( $string, $array )4Hi Tonny5Hi Tonny6Hi Tonny7Hi Tonny8parse_str( $string, $array )9
parse_str( $string, $array )0
Hi Amit your emailID is amit1998@gmail.com_1
Hi Amit your emailID is amit1998@gmail.com2 Hi Amit your emailID is amit1998@gmail.com3Hi Amit your emailID is amit1998@gmail.com4Hi Tonny8Hi Tonny5Hi Amit your emailID is amit1998@gmail.com7Hi Amit your emailID is amit1998@gmail.com8
Hi Amit your emailID is amit1998@gmail.com_9
Keluaran. Hi Tonny
Contoh 2.
PHP
<?php
// Initialize URL to the variable
$url =<?php4;
parse_str( $string, $array )0
parse_str( $string, $array )1
parse_str( $string, $array )2
parse_str( $string, $array )3
parse_str( $string, $array )4 =parse_str( $string, $array )6parse_str( $string, $array )7$urlparse_str( $string, $array )9
Hi Tonny_0
Hi Tonny_1
Hi Tonny2parse_str( $string, $array )7parse_str( $string, $array )4Hi Tonny5Hi Tonny6Hi Tonny7Hi Tonny8parse_str( $string, $array )9
parse_str( $string, $array )0
Hi Amit your emailID is amit1998@gmail.com_1
Hi Amit your emailID is amit1998@gmail.com2 Hi Amit your emailID is amit1998@gmail.com3Hi Amit your emailID is amit1998@gmail.com4Hi Tonny8Hi Tonny5Hi Amit your emailID is amit1998@gmail.com7________79______4=5Hi Amit your emailID is amit1998@gmail.com4Hi Tonny8Hi Tonny_________79
Hi Amit your emailID is amit1998@gmail.com_9
Keluaran. Hi Amit your emailID is amit1998@gmail.com
PHP adalah bahasa skrip sisi server yang dirancang khusus untuk pengembangan web. Anda dapat mempelajari PHP dari bawah ke atas dengan mengikuti Tutorial PHP dan Contoh PHP ini