Baru-baru ini, saya menerima permintaan yang agak pelik Pihak lain meminta untuk menambah borang seperti perkataan ke laman web korporat untuk diisi dan diserahkan oleh pengguna dalam talian.
Melihat dengan teliti, borang itu mempunyai lebih daripada seratus medan, yang agak menakutkan. Jika anda mengisi secara manual id dan nama untuk setiap input, ia akan menjadi kerja fizikal yang dahsyat.
Selepas memikirkannya berulang kali, untuk mengelakkan daripada mengisi id input dan menamakan satu persatu, saya memutuskan untuk menggunakan JS dan PHP untuk menyelesaikan siri tugasan penyerahan borang ini.
Komponen bentuk
Borang pertama mengikut keperluan pelanggan, dan borang serta pilihan yang perlu diisi dibentangkan mengikut prototaip dokumen perkataan untuk menjadikannya konsisten dengan pengalaman pengguna, seperti yang ditunjukkan di bawah:
(Gambar di atas hanyalah sebahagian kecil daripada borang sebagai contoh. Sebenarnya borang ini sangat besar)
Selepas susun atur html borang selesai, kita perlu mula menetapkan id dan nama input borang ini untuk penyerahan borang.
Seperti yang dinyatakan dalam mukadimah, terdapat banyak input, jadi kami menggunakan JS di sini untuk menambah id dan nama secara automatik pada input. Kodnya adalah seperti berikut (kaedah jquery):
$(document).ready(function(){ var inputNum = 0; $(‘input').each(function(){ $(this).attr({name:‘val'+inputNum,id:‘val'+inputNum}); inputNum++ })})
Selepas memproses melalui js, semua input pada halaman akan menambah id dan nama secara automatik dengan meningkat sebanyak 1. Pada ketika ini, borang ini pada asasnya boleh digunakan secara normal. (Saya tidak akan menerangkan daripada anda, semua pengaturcara memahaminya.)
Borang GET bahagian
OK, borang boleh diserahkan kepada program PHP untuk diproses secara normal. Sudah tentu, kaedah di atas juga boleh digunakan untuk sebarang jenis program web, seperti .net, jsp, asp, dll...
Langkah seterusnya ialah membuka rentetan yang diserahkan untuk mendapatkan nilai dalam borang. Artikel ini tidak akan menerangkan cara mendapatkan nilai lulus borang.
Memandangkan terdapat juga nilai N yang diluluskan daripada borang, adalah mustahil untuk kita menulis pembolehubah tatasusunan satu demi satu untuk mendapatkan nilai ini, jadi kita juga perlu menggunakan beberapa kaedah untuk menanganinya di sini.
Baiklah, mari mulakan perniagaan. Mula-mula, mari kita fikirkan cara untuk menambah setiap tatasusunan ini sebanyak 1 mengikut logik program js sebelumnya untuk mencapai output tatasusunan.
Kod program adalah seperti berikut:
<?php $num = 0; //初始化计数变量 $_REQUEST[‘val'.$num]; $num++; //插入到需要获取值的地方,每个需要获取传值的地方重复使用这串代码即可 ?>
Set kod ini digunakan terutamanya apabila susunan input dan permintaan borang adalah konsisten Jika pesanan tidak dapat dipadankan satu persatu, kekeliruan akan berlaku. Jadi anda perlu berhati-hati apabila menggunakannya!
Apabila menyerahkan kepada pangkalan data, anda boleh mempertimbangkan untuk menggunakan foreach untuk memproses parameter yang diperoleh ke dalam tatasusunan dan kemudian memasukkannya ke dalam pangkalan data. Ia akan menjadi lebih mudah.