我只是有个问题。
我有一组同名的文本框。(name = "quantity[]")
如何在提交后保留表单的值?例如,我有5个相同名称的文本框。我填写了其中4份并提交了表格。我希望显示一个字段为空的错误,并保留我提交表单之前放置的值。
如果文本框名称不同,我可以这样做。但如果他们有同样的,我不能让它工作。
<input type="text" name="quantity[]" value="<?php if(!empty($_POST['quantity'])) echo $_POST['quantity'];?>">
<input type="text" name="quantity[]" value="<?php if(!empty($_POST['quantity'])) echo $_POST['quantity'];?>">
<input type="text" name="quantity[]" value="<?php if(!empty($_POST['quantity'])) echo $_POST['quantity'];?>">
<input type="text" name="quantity[]" value="<?php if(!empty($_POST['quantity'])) echo $_POST['quantity'];?>">
<input type="submit" name="submit">
感谢您的帮助php人员。谢谢你的帮助。
发布于 2017-10-17 09:43:41
如果字段数量不是固定的,也就是说,它是不同的。您应该像这样使用for循环
<?php
if(!empty($_POST['quantiy'])){
$count =count($_POST['quantity']);
for($i=0; $i<$count; $i++){
?>
<input type="text" name="quantity[]" value="<?php echo $_POST['quantity'][$i];?>">
<?php
}
}
else
{
?>
<input type="text" name="quantity[]" value="">
<input type="text" name="quantity[]" value="">
<input type="text" name="quantity[]" value="">
<input type="text" name="quantity[]" value="">
<?php
}
?>
发布于 2017-10-17 09:44:06
您的问题是,当表单提交时,您会丢失对输入字段的引用。因为所有字段的名称都是相同的,所以您无法确定是哪个字段提供了输入。
您可以做的是:您可以像这样弹出$_POST来填充表单字段:
<input type="text" name="quantity[]" value="<?php if(!empty($_POST['quantity'])) echo array_pop($_POST['quantity']);?>">
所发生的情况如下:
注意:如果用户用此代码填写字段1、2和4,则字段1、2和3将被填充。
https://stackoverflow.com/questions/46786946
复制相似问题