在wordpress中,我有一个类似的表单
<form id="data-form" action="">
<table id="user-data">
<tr>
<td>Name</td>
<td>Email</td>
</tr>
<tr>
<td><input type="text" name="name"></td>
<td><input type="text" name="email"></td>
</tr>
</table>
<button type="submit" value="submit" name="submit">Submit</button>
</form>
所以当我点击提交按钮时,它会像一样将数据插入到表中
global $wpdb;
if ( isset($_POST['submit']) ) {
$wpdb->insert(
'fl_user_data',
array(
'id' => '',
'name' => $_POST['name'],
'email' => $_POST['email'])
);
echo 'success';
}
并且它正在将值插入到数据库中。现在,我在表单中使用了一个名为"添加行"的按钮。因此,该按钮将该行添加到表中。现在,当我点击按钮时,它会像下面的一样向表中添加一行
<a href="#" id="add-row">+Add Row</a>
<script>
$('body').on('click', '#add-row', function(e) {
var Html = $('<tr><td><input type="text" name="name"></td><td><input type="text" name="email"></td></tr>');
$('table#user-data').append(Html);
});
</script>
当我单击"添加行"按钮时,这是在添加行。所以,当所有字段都填充了新行,然后我点击提交按钮时那么它只插入一个行值。有人能告诉我如何在数据库表中插入数据行吗成行。任何帮助和建议都将非常可观。感谢
因为要添加的字段都有相同的名称(名称、电子邮件),所以每个字段只是覆盖下一个字段。
您需要做的是,每次添加字段时,都要以已知的方式使名称唯一。例如name1、email1;姓名2,电子邮件2;name3、email3等等。然后在插入脚本中,您需要循环并一次添加一个。
一个更好的方法可能是有一个名为"row_count"的隐藏字段,每次添加一行时都会递增,这样在PHP方面,您只需使用提供的数字来循环,而不必计算出您有多少行。
不要忘记对所有输入等进行消毒。