我在一个小项目中工作,我有一个代码可以在单击复选框时执行多个字段值发布。我有一张桌子,上面列出了课程和时间。我需要知道如何单击复选框并使用循环同时发送班级和时间值。
这真让我抓狂。我已经花了几个小时,无法弄清楚如何同时发送多个值。当我检查所有值时,它可以正常工作,但是如果单击一个或两个值,则总是显示错误的时间值。
这是我正在使用的PHP代码:
if(isset($_POST['submit'])){
if((!empty($_POST['class'])) && (!empty($_POST['time']))) {
$checked_count = count($_POST['class']);
echo "You have selected following ".$checked_count." option(s): <br/>";
// Loop to store and display values of individual checked checkbox.
for ($i=0; $i < $checked_count; $i++) {
echo $_POST['class'][$i]. " ";
echo $_POST['time'][$i]. "<br>";
}
}
}
else{
echo "<b>Please Select At least One Option.</b>";
}
这是我的HTML代码:
<form action="checkclass.php" method="post">
<label class="heading">Select Your Technical Exposure:</label><br />
<tr>
<td><input type="checkbox" name="class[]" value="C/C++"><label>C/C++</label></td>
<td><input type="text" name="time[]" value="1" width="15"><br /></td>
</tr>
<tr>
<td><input type="checkbox" name="class[]" value="Java"><label>Java</label></td>
<td><input type="text" name="time[]" value="2" width="15"><br /></td>
</tr>
<tr>
<td><input type="checkbox" name="class[]" value="PHP"><label>PHP</label></td>
<td><input type="text" name="time[]" value="3" width="15"><br /></td>
</tr>
<tr>
<td><input type="checkbox" name="class[]" value="HTML/CSS"><label>HTML/CSS</label></td>
<td><input type="text" name="time[]" value="2" width="15"><br /></td>
</tr>
<tr>
<td><input type="checkbox" name="class[]" value="LINUX"><label>UNIX/LINUX</label></td>
<td><input type="text" name="time[]" value="3" width="15"><br /></td>
</tr>
<input type="submit" name="submit" Value="Submit"/>
</form>
如果我检查所有值。我得到以下结果:
上课时间
C / C ++,1
Java,2 PHP,3 HTML / CSS,2 UNIX / LINUX,3
如果仅检查UNIX / LINUX类,则会得到:
上课时间
UNIX / LINUX,1
当LInux时间应该为3时,我得到1。我认为,当单击一个类时,时间字段将在数组中的第一个位置。
如何关联时间和类的值,以便同时发布整个值。我真的很想做多次插入,但是我认为解决这个问题对我有帮助。
对于此事的任何帮助,我将不胜感激。