我猜这个问题之前已被问过,但我做了一些搜索,但未能找到答案(可能是因为我缺乏术语).
我正在开发一个在表中显示一堆输入行的应用程序,当提交表单时,我需要迭代每个输入,用输入的值更新数据库.我一直在做的是命名这样的输入:
<input type="text" name="name1"><input type="text" name="gender1"> ...
<input type="text" name="name2"><input type="text" name="gender2"> ...
<input type="text" name="name3"><input type="text" name="gender3"> ...
.
.
.
Run Code Online (Sandbox Code Playgroud)
然后在PHP中执行此操作:
for($i = 1; isset($_POST['name' . $i]); $i++)
{
$name = $_POST['name' . $i];
$gender = $_POST['gender' . $i];
// update DB with input values
}
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中,可以添加和删除行,每行大约有6个输入,通常有几十行.这对我来说似乎有些混乱,我想知道是否有更好/更清洁的方式呢?
最好采取以下方式采取 HTML input array
<input type="text" name="name[]">
<input type="text" name="gender[]">
Run Code Online (Sandbox Code Playgroud)
在PHP中,您必须执行以下操作
$cnt = count($_POST['name']);
for($i=0;$i<$cnt;$i++){
echo $_POST['name'][$i];
echo $_POST['gender'][$i];
....
// do any update with database
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3012 次 |
| 最近记录: |