我正在使用PHP创建一个HTML表,其中表中的每一行都包含一个输入类型为“text”的单元格 . 在行的末尾有一个提交按钮,它将从表格单元格的输入字段中读取数据 .
我有使用$ _GET方法编写的代码,在单击提交按钮后读取我的URL的操作,但此操作的PHP代码未正确确定表中输入字段的数据是否为空 .
PHP代码:
$time_cell_row = 1;
// <input name="userid" type="hidden" id="userid" value="<? echo $rows['userid'];
while($tasks_row = $tasks_result->fetch_array()) {
$time_cell_column = 1;
echo "<form name='timesubmit" . $time_cell_row . "' action='enter_time.php?action=timesubmit" .$time_cell_row . "' method='post'>";
echo "<tr>
<td>" . $tasks_row['taskname'] . "</td>
<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo "<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo "<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo "<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo " <td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo "<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
$time_cell_column++;
echo "<td><input name=taskdaycell" . $time_cell_row . $time_cell_column . " type=text></input></td>";
echo "<td><input name=submit_time" . $time_cell_row . $time_cell_column . " type=submit></input></td>";
echo "</form></tr>";
$time_cell_row++;
}
if (isset($_GET['action'])) {
switch (strtolower($_GET['action'])) {
case 'timesubmit1':
if ( !isset($_POST['taskdaycell11']) || !isset($_POST['taskdaycell12']) || !isset($_POST['taskdaycell13'])
|| !isset($_POST['taskdaycell14']) || !isset($_POST['taskdaycell15']) || !isset($_POST['taskdaycell16'])
|| !isset($_POST['taskdaycell17'])) {
echo "<b>Please do not leave any of the times blank</b><br>";
}
else {
echo "Your times have been entered.";
}
break;
}
}
现在,如果我将表格单元格留空并单击“提交”按钮,则输出始终显示“已输入您的时间”,即使输入字段为空白 .
1 回答
无论是否包含任何内容,都将始终设置$ _POST . 因此,由于您的代码正在查看是否已设置而不是查看它是否包含任何内容,因此它无法按您的意愿运行 .
尝试这样做 .
Edit: 感谢OP在我的代码中拾取错误:)