parameter lompat html

PHPz
Lepaskan: 2023-05-15 16:58:08
asal
1569 orang telah melayarinya

Parameter lompat HTML: Petua untuk menghantar parameter menggunakan kaedah GET dan POST

HTML ialah bahasa pengaturcaraan bahagian hadapan yang biasa digunakan Dalam aplikasi praktikal, kadangkala perlu lulus beberapa parameter semasa melompat halaman. Contohnya, jika anda mencari kata kunci dalam halaman carian, kemudian melompat ke halaman hasil carian dan memaparkan hasil carian yang berkaitan dalam halaman hasil, anda perlu lulus parameter. Artikel ini akan memperkenalkan cara melompat parameter dalam HTML, dan cara menghantar parameter menggunakan kaedah GET dan POST.

1. Cara melompat parameter dalam HTML

Untuk melompat parameter dalam halaman HTML, terdapat dua kaedah: parameter URL untuk melompat dan penyerahan borang untuk melompat.

1. Lompatan parameter URL

Lompatan parameter URL merujuk kepada menambahkan parameter terus ke hujung alamat URL supaya apabila melompat ke halaman sasaran, latar belakang boleh mendapatkan parameter melalui parsing URL .

Format alamat URL adalah seperti berikut:

http://www.example.com/index.php?key=value
Salin selepas log masuk

di mana, key ialah nama parameter dan value ialah nilai parameter. Jika anda perlu melepasi berbilang parameter, anda boleh menggunakan simbol & untuk menyambungkannya. Contohnya:

http://www.example.com/index.php?key1=value1&key2=value2
Salin selepas log masuk

Dalam teg hiperpautan <a> yang perlu dilompat, nilai atribut href ialah alamat URL destinasi lompatan, contohnya:

&lt;a href=&quot;http://www.example.com/index.php?key=value&quot;&gt;跳转到目的地&lt;/a&gt;
Salin selepas log masuk

Apabila pengguna mengklik pautan ini, ia secara automatik akan melompat ke halaman sasaran dan membawa parameter.

2. Lompat atas penyerahan borang

Lompat atas penyerahan borang merujuk kepada menghantar parameter ke latar belakang melalui penyerahan borang, dan latar belakang memperoleh parameter dengan menghuraikan data borang.

Bentuk biasa bentuk HTML termasuk kotak input teks, kotak pilihan lungsur turun, butang radio, kotak semak, dsb. Untuk menyerahkan borang, pengendali untuk data borang mesti ditakrifkan dalam teg

Contohnya:

&lt;form method=&quot;post&quot; action=&quot;http://www.example.com/index.php&quot;&gt;
    &lt;input type=&quot;text&quot; name=&quot;key1&quot; value=&quot;value1&quot;&gt;
    &lt;input type=&quot;text&quot; name=&quot;key2&quot; value=&quot;value2&quot;&gt;
    &lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;提交&quot;&gt;
&lt;/form&gt;
Salin selepas log masuk

Dalam kod di atas, method="post" bermaksud menggunakan kaedah POST untuk menyerahkan borang, dan action="http://www.example.com/index.php" bermaksud menyerahkan borang ke halaman yang ditentukan.

Antaranya, atribut <input> dalam teg name mewakili nama parameter dan atribut value mewakili nilai parameter. Apabila borang diserahkan, data borang akan dihantar ke latar belakang bersama-sama supaya latar belakang boleh mendapatkan parameter melalui parsing.

2. Petua untuk menghantar parameter melalui kaedah GET dan POST

Apabila menghantar parameter, anda perlu memberi perhatian kepada perbezaan antara kaedah GET dan kaedah POST serta isu keselamatan. Kaedah GET menggunakan parameter sebagai sebahagian daripada URL dan menghantarnya dalam teks yang jelas, yang boleh dipintas atau diganggu dengan mudah oleh penyerang berniat jahat. Kaedah POST termasuk parameter dalam badan mesej dalam permintaan HTTP Walaupun ia lebih selamat, kecekapan penghantaran adalah lebih rendah.

Apabila menghantar parameter, anda boleh menggunakan beberapa teknik untuk memproses parameter untuk menjadikannya lebih fleksibel dan selamat apabila menggunakan kaedah GET atau POST.

1. Gunakan pengekodan URL untuk menghantar parameter

Dalam kaedah GET, parameter dipaparkan dalam URL dalam teks biasa Jika parameter mengandungi beberapa aksara khas, seperti ruang, bahasa Cina, simbol, dsb., Masalah akan timbul. Pada masa ini, teknologi pengekodan URL perlu digunakan untuk mengekod parameter supaya tiada pengecualian berlaku semasa proses penghantaran. Pengekodan URL berfungsi dengan menukar aksara khas kepada perwakilan heksadesimal %xx. Contohnya, kod ruang ialah %20 dan kod Cina "China" ialah %e4%b8%ad%e5%9b%bd.

Dalam URL, semua aksara khas perlu dikodkan. Dalam HTML, anda boleh menggunakan fungsi encodeURIComponent() dan decodeURIComponent() untuk mengekod dan menyahkod URL, seperti yang ditunjukkan di bawah:

var keyword = &quot;中国&quot;;
var url = &quot;http://www.example.com/index.php?keyword=&quot; + encodeURIComponent(keyword);
Salin selepas log masuk

Kod di atas menggunakan fungsi encodeURIComponent() untuk mengekod bahasa Cina dan alamat URL yang dijana ialah :

http://www.example.com/index.php?keyword=%e4%b8%ad%e5%9b%bd
Salin selepas log masuk

Semasa pemprosesan latar belakang, parameter perlu dinyahkod:

$keyword = urldecode($_GET['keyword']);
Salin selepas log masuk

2 Gunakan borang tersembunyi untuk menghantar parameter

Apabila menggunakan kaedah POST untuk menghantar parameter, terdapat. is a Caranya ialah menggunakan borang tersembunyi untuk lulus parameter. Menyembunyikan borang bermakna menetapkan atribut style elemen borang kepada display:none untuk menjadikannya tidak kelihatan pada halaman. Dengan menambahkan parameter yang diperlukan dalam borang tersembunyi, ia boleh dihantar ke latar belakang bersama-sama apabila borang diserahkan.

Contohnya:

&lt;form method=&quot;post&quot; action=&quot;http://www.example.com/index.php&quot;&gt;
    &lt;input type=&quot;text&quot; name=&quot;keyword&quot; value=&quot;中国&quot;&gt;
    &lt;input type=&quot;hidden&quot; name=&quot;id&quot; value=&quot;123&quot;&gt;
    &lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;提交&quot;&gt;
&lt;/form&gt;
Salin selepas log masuk

Dalam kod di atas, atribut <input> bagi teg type disembunyikan, menunjukkan bahawa ini adalah bentuk tersembunyi, atribut name mewakili nama parameter, dan atribut value Mewakili nilai parameter. Apabila menyerahkan borang, parameter ini akan dihantar ke latar belakang bersama-sama.

3. Gunakan format data JSON untuk menghantar parameter

JSON ialah format pertukaran data yang ringan dengan ciri serba boleh, fleksibiliti dan kebolehbacaan. Dalam lulus parameter, parameter boleh dikapsulkan secara langsung dalam objek JSON dan kemudian melalui kaedah POST.

Contohnya:

var data = {&quot;id&quot;:123, &quot;name&quot;:&quot;中国&quot;};
$.post(&quot;http://www.example.com/index.php&quot;, JSON.stringify(data), function(response){
    console.log(response);
}, &quot;json&quot;);
Salin selepas log masuk

Dalam kod di atas, fungsi $.post() jQuery digunakan untuk melaksanakan penyerahan kaedah POST. Parameter pertama fungsi ini mewakili halaman yang memproses data, parameter kedua mewakili data yang akan dihantar, parameter ketiga mewakili fungsi panggil balik selepas berjaya, dan parameter keempat mewakili jenis data.

Apabila memproses di latar belakang, anda perlu menggunakan fungsi json_decode() dalam PHP untuk menyahkod:

$data = json_decode(file_get_contents('php://input'), true);
Salin selepas log masuk

这段代码中,file_get_contents('php://input')表示获取提交的消息体,即POST方法中的参数。json_decode()函数将JSON格式的参数解码为PHP数组,第二个参数为true表示转换为关联数组形式。

注意:利用JSON进行参数传递时,需要注意安全性问题,防止恶意攻击者注入JS代码或跨站脚本攻击。此时,可以使用jQuery的$.param()函数将参数序列化为字符串进行安全性处理。

总结:

HTML跳转参数可以通过URL参数或表单提交实现,使用GET方法和POST方法进行参数传递时,需要注意安全性和参数的编码解码问题。可以利用URL编码、隐藏表单或JSON数据格式等技巧来实现参数的传递。

Atas ialah kandungan terperinci parameter lompat html. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!