人はすべてがOKであるが、0の値を持つ3つの余分な行がEMPLOYEE_ID複数行の挿入は0
if (isset($_POST['submit'])) {
$i = 0;
foreach ($_POST as $val) {
$user_id = $_POST['user_id'][$i];
$employee_name = $_POST['employee_name'][$i];
$remarks = $_POST['remarks'][$i];
$time_in = $_POST['time_in'][$i];
$time_out = $_POST['time_out'][$i];
$team = $_POST['team'][$i];
mysql_query("INSERT INTO attendance (employee_id, employee_name, remarks, time_in, time_out, team) VALUES ('$user_id', '$employee_name', '$remarks','$time_in', '$time_out', '$team')");
$i++;
}
}
に挿入されます、これはフォーム
$time_in = date('Y-m-d H:i');
$result=mysql_query("SELECT * FROM members WHERE login != 'admin'");
$rowNo = 1; //Increment Row Number
while($row = mysql_fetch_array($result))
{
$id = $row['member_id'];
$user = $row['login'];
$team = $row['team'];
echo "<tr align='left'>";
echo"<td width='10px'><font color='white'>" .$rowNo++."</font>.</td>";
echo"<td><font color='black'><input type='hidden' name='user_id[]' value='".$id."'/> <input type='hidden' name='employee_name[]' value='".$user."'/> " .$row['login']."</font></td>";
echo"<td><font color='black'>
<select name='remarks[]'>
<option valur='Present'>Present</option>
<option valur='Absent'>Absent</option>
<option valur='Half Day'>Half Day</option>
</select>
</font>
</td>";
echo"<td><font color='black'><input type='text' name='time_in[]' value='".$time_in."'/> <input type='text' name='time_out[]' value='".$time_out."'/> <input type='hidden' name='team[]' value='".$team."'/></font></td>";
echo"<td>";
echo "<p align='right'>
</p></tr>";
}
ある複数の行を挿入する問題を有するイムと2つの余分な行を挿入します
どうすれば修正できますか?
ありがとうございました
あなたの$ _POSTの内側には何ですか? '$ _POST'内のすべてのキーの上に'のvar_dump($ _ POST) 'あなたのループが繰り返さからの出力を投稿し、おそらくあなたは[' foreachの($ _POSTの線に沿って一つだけのマルチ値キー –
'user_id'] as $ val) 'は常に' user_id'とみなされます。あなただけのPHPを学習している場合は、[ 'mysql_query'](http://php.net/manual/en/を使用しないでください。私は自分のフォームを掲載している –
何かを反復処理していきます –