提交前检查表格
问题描述:
根据状态填写数据的表格/表格。所以表中的行是动态生成的。提交前检查表格
我想要的是想要提交表单的人填写了三个字段(STIN/STOUT/REASON)(是下拉菜单的),并且必须从数据库填写字段ITEM(不是用户输入)。
如果是一行,我认为它会很容易,但它取决于订单的状态,它将显示多少行,并取决于ITEM项目,如果它有ITEM。
实施例:
行1具有STIN被选择STOUT的项被选择的原因是 选择
行2没有项目STIN被选择STOUT原因是 选择
被选择
必须检查没有项目的第二行或第3行,并且必须检查所有其他可用行,如果生成xml按钮被点击。
<?php
while ($row = sqlsrv_fetch_array($result)) {
$S1 = $row['Qty_ExchangeStock'];
$S2 = $row['Qty_InService'];
$S3 = $row['Qty_TotalStock'];
$status = '1';
$Stock = $S1 - $S2;
if ($Stock < 1) {
$status = '2';
$Stock = 0;
}
echo '<tr>';
echo '<td><input type="text" name="SONR-'.$counter.'" value="'.$row['No_'].'" size="6" readonly /></td>';
echo '<td><div>'.$row['Brand']. '</div></td>';
echo '<td><div>'.$row['Model']. '</div>';
echo ' <input type="hidden" name="SIGC-'.$counter.'" value="'.$row['Service Item Group Code']. '" /></td>';
echo '<td><input type="text" name="ITEM-'.$counter.'" value="'.$row['Item No_'].'" size="8" readonly /></td>';
echo '<td class="center"><div>'.$Stock. '</div></td>';
echo '<td class="center"><div>'.$row['Claim']. '</div></td>';
echo '<td><input type="text" class="small" maxlength="20" placeholder="Serienummer" name="SNR-'.$counter.'" /></td>';
echo '<td><input type="text" class="small" maxlength="10" placeholder="Approval NR" name="APPNR-'.$counter.'" /></td>';
echo '<td><select id="check" name="STIN-'.$counter.'" class="small">'.$ruilin.'</select></td>';
echo '<td><select name="STOUT-'.$counter.'" class="small">'.$ruiluit.'</select></td>';
echo '<td><select name="REASON-'.$counter.'" class="small">'.$dropdown.'</select></td>';
echo '<td><input type="text" maxlength="70" title="Opmerking: maximaal 80 tekens" name="OPM-'.$counter.'" /></td>';
echo "</tr>\r\n";
$counter++;
}
?>
</tbody>
</table>
<input type="submit" value="Generate XML">
</form>
</div>
</div>
<?php
}
?>
答
您可能想从服务器端验证开始。原因是人们可以关闭验证或使用脚本进行调用,并且您需要能够在服务器上正确验证逻辑。
在这种情况下,您需要定义一个服务器端API(服务器必须知道哪些数据?),检查并记录它。但是,这从设计开始,我认为你还没有。
一旦你完成了,你可以在Javascript中添加类似的检查。这改善了用户体验,但它不能替代服务器端检查。
如果你想在表单提交前检查,你必须在Javascript中完成。表单提交后,PHP将在服务器上运行。 – Barmar