从php生成的表更新sql表
我正试图通过php生成一个表,该表的下拉框中会根据该ID下的数据库中的内容充满可选择的选项。问题是,我还想根据用户输入到下拉框中的内容更新该表,但这并不是我的运气 表生成工作得非常好从php生成的表更新sql表,php,mysql,Php,Mysql,我正试图通过php生成一个表,该表的下拉框中会根据该ID下的数据库中的内容充满可选择的选项。问题是,我还想根据用户输入到下拉框中的内容更新该表,但这并不是我的运气 表生成工作得非常好 echo "<form id='RemarketingRollCall' method='POST'>"; echo "<tr>"; echo "<td name='ID[]' contenteditable='false' align='center' width
echo "<form id='RemarketingRollCall' method='POST'>";
echo "<tr>";
echo "<td name='ID[]' contenteditable='false' align='center' width='11%'>" . $row['ID'] . "</td>";
echo "<td name='name[]' contenteditable='false' align='center' width='11%'>" . $row['Name'] . "</td>";
echo "<td name='job[]' contenteditable='false' align='center' width='11%'>
<select name='Name'>
<option>Remarketing</option>
<option>IOS</option>
<option>Computers</option>
</select></td>";
if ( strcmp( $row['Monday'], 'Attended' ) == 0 ){
echo "<td name='monday[]' contenteditable='false' align='center' width='11%'>
<select name='Monday'>
<option>Attended</option>
<option>Absent</option>
</select></td>";
} else if ( strcmp( $row['Monday'], 'Absent' ) == 0 ){
echo "<td name='monday[]' contenteditable='false' align='center' width='11%'>
<select name='Monday'>
<option>Absent</option>
<option>Attended</option>
</select></td>";
} else {
echo "<td name='monday[]' contenteditable='false' align='center' width='11%'>
<select name='Monday'>
<option> </option>
<option>Absent</option>
<option>Attended</option>
</select></td>";
}
if ( strcmp( $row['Tuesday'], 'Attended' ) == 0 ){
echo "<td name='tuesday[]' contenteditable='false' align='center' width='11%'>
<select name='Tuesday'>
<option>Attended</option>
<option>Absent</option>
</select></td>";
} else if ( strcmp( $row['Tuesday'], 'Absent' ) == 0 ){
echo "<td name='tuesday[]' contenteditable='false' align='center' width='11%'>
<select name='Tuesday'>
<option>Absent</option>
<option>Attended</option>
</select></td>";
} else {
echo "<td name='tuesday[]' contenteditable='false' align='center' width='11%'>
<select name='Tuesday'>
<option> </option>
<option>Absent</option>
<option>Attended</option>
</select></td>";
}
if ( strcmp( $row['Wednesday'], 'Attended' ) == 0 ){
echo "<td name='wednesday[]' contenteditable='false' align='center' width='11%'>
<select name='Wednesday'>
<option>Attended</option>
<option>Absent</option>
</select></td>";
} else if ( strcmp( $row['Wednesday'], 'Absent' ) == 0 ){
echo "<td name='wednesday[]' contenteditable='false' align='center' width='11%'>
<select name='Wednesday'>
<option>Absent</option>
<option>Attended</option>
</select></td>";
} else {
echo "<td name='wednesday[]' contenteditable='false' align='center' width='11%'>
<select name='Wednesday'>
<option> </option>
<option>Absent</option>
<option>Attended</option>
</select></td>";
}
if ( strcmp( $row['Thursday'], 'Attended' ) == 0 ){
echo "<td name='thursday[]' contenteditable='false' align='center' width='11%'>
<select name='Thursday'>
<option>Attended</option>
<option>Absent</option>
</select></td>";
} else if ( strcmp( $row['Thursday'], 'Absent' ) == 0 ){
echo "<td name='thursday[]' contenteditable='false' align='center' width='11%'>
<select name='Thursday'>
<option>Absent</option>
<option>Attended</option>
</select></td>";
} else {
echo "<td name='thursday[]' contenteditable='false' align='center' width='11%'>
<select name='Thursday'>
<option> </option>
<option>Absent</option>
<option>Attended</option>
</select></td>";
}
if ( strcmp( $row['Friday'], 'Attended' ) == 0 ){
echo "<td name='friday[]' contenteditable='false' align='center' width='11%'>
<select name='Friday'>
<option>Attended</option>
<option>Absent</option>
</select></td>";
} else if ( strcmp( $row['Friday'], 'Absent' ) == 0 ){
echo "<td name='friday[]' contenteditable='false' align='center' width='11%'>
<select name='Friday'>
<option>Absent</option>
<option>Attended</option>
</select></td>";
} else {
echo "<td name='friday[]' contenteditable='false' align='center' width='11%'>
<select name='Friday'>
<option> </option>
<option>Absent</option>
<option>Attended</option>
</select></td>";
}
echo "<td name='week[]' contenteditable='false' align='center' width='11%'>" . $row['Week'] . "</td>";
echo "</tr>";
echo "</form>";
这是假定要更新sql表的部分
foreach($_POST['ID'] as $id){
echo $id . ' ';
foreach($_POST['name'] as $Name){
echo $Name . ' ';
foreach($_POST['job'] as $Job){
foreach($_POST['monday'] as $Monday){
foreach($_POST['tuesday'] as $Tuesday){
foreach($_POST['wednesday'] as $Wednesday){
foreach($_POST['thursday'] as $Thursday){
foreach($_POST['friday'] as $Friday){
$sql = "UPDATE Employee SET `Name`=$Name, `Job`=$Job, `Monday`=$Monday, `Tuesday`=$Tuesday, `Wednesday`=$Wednesday, `Thursday`=$Thursday, `Friday`=$Friday WHERE `ID`=$id";
if ( !mysqli_query( $con, $sql ) )
{
die( 'Error: ' . mysqli_error( $con ) );
}
mysqli_close( $con );
?>
<script type="text/javascript">
self.parent.location.href = "/index.php";
</script>
<?php
}
}
}
}
}
}
}
}
}
编辑-忘了提出我的问题。很抱歉
我在当前代码中做错了什么?我不明白为什么这不起作用。我很抱歉,我的问题是,我在当前代码中做错了什么?因为我不明白为什么它不更新。在打开PHP标记后立即将错误报告添加到文件的顶部例如,我刚刚注意到您的查询已经有mysqli_error$con,因此这应该会引发一个错误,您没有共享。如果您还没有看到这些,那么您的代码还没有实现。而且,您的代码没有任何价值。您不需要把它放得太深。您可以在循环之前让查询处于外部,然后使用条件调用它。此外,将foreach行的结构更像foreach array_表达式$key=>$value类型的结构,这样更容易、更清晰,所以不需要列出每一行。