繁体   English   中英

多行插入可插入2个额外的行,其中0

[英]multiple row insert inserts 2 extra rows with 0

伙计们在插入多行问题上都可以,但是3个额外的行(值为0)插入了employee_id

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>";

            }

如何纠正呢?

谢谢

您的表格是什么样的?

另外,您不应该使用mysql_命令。 不推荐使用。 应该使用mysqli过程式或面向对象。

正在编辑以提供可能的答案...

不要在$ _POST上循环,而是在表单输入中命名一个form_value[]或类似名称,然后循环: foreach($_POST['form_value'] as $val)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM