Codeigniter在SQL中插入多个行 [英] Codeigniter Insert Multiple Rows in SQL
本文介绍了Codeigniter在SQL中插入多个行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我对Codeigniter很新鲜。我有一个看起来像这样的形式。
I am fresh to Codeigniter. I have a form which looks something like this.
<tr>
<td><input type="text" name="Name[0]" value=""></td>
<td><input type="text" name="Address[0]" value=""><br></td>
<td><input type="text" name="Age[0]" value=""></td>
<td><input type="text" name="Email[0]" value=""></td>
</tr>
<tr>
<td><input type="text" name="Name[1]" value=""></td>
<td><input type="text" name="Address[1]" value=""><br></td>
<td><input type="text" name="Age[1]" value=""></td>
<td><input type="text" name="Email[1]" value=""></td>
</tr>
可能有0到n行,通常是5到10行。如何在SQL中插入它们?这是可能与Codeigniter或应该使用本机PHP脚本?
There may be from 0 to n rows, usually 5 to 10 rows. How do I insert them in SQL? Is this possible with Codeigniter or should I use a native PHP script?
$name=$_POST['Name'];
$address=$_POST['Address'];
$age=$_POST['Age'];
$email=$_POST['Email'];
$count = count($_POST['Name']);
for($i=0; $i<$count; $i++) {
$data = array(
'name' => $name[$i],
'address' => $address[$i],
'age' => $age[$i],
'email' => $email[$i],
);
$this->db->insert('mytable', $data);
}
有用。
这个解决方案看起来不太好。
kevtrout's answer looks better but is currently throwing a lot of errors.
推荐答案
使用这样的表单:
<tr>
<td><input type="text" name="user[0][name]" value=""></td>
<td><input type="text" name="user[0][address]" value=""><br></td>
<td><input type="text" name="user[0][age]" value=""></td>
<td><input type="text" name="user[0][email]" value=""></td>
</tr>
<tr>
<td><input type="text" name="user[1][name]" value=""></td>
<td><input type="text" name="user[1][address]" value=""><br></td>
<td><input type="text" name="user[1][age]" value=""></td>
<td><input type="text" name="user[1][email]" value=""></td>
</tr>
那么你可以这样做:
foreach($_POST['user'] as $user)
{
$this->db->insert('mytable', $user);
}
这篇关于Codeigniter在SQL中插入多个行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文