Php 粘性形式未定义偏移量

Php 粘性形式未定义偏移量,php,Php,我有一个5x2 HTML表格: 这张桌子附在一张表格里 提交表单时,它会重定向到同一页面 输入字段值存储在关联数组中 这些值显示在最初输入它们的相应字段中 代码: 已对数组进行筛选,以忽略可能潜入的空值 现在,如何使HTML表单显示值?我知道粘性表单,但由于我必须保持表单大小不变(5x2),所以我尝试使用类似以下的代码 <input type="text" value="<?php echo $arrayKeys[0]; ?> "> <input typ

我有一个5x2 HTML表格:

  • 这张桌子附在一张表格里
  • 提交表单时,它会重定向到同一页面
  • 输入字段值存储在关联数组中
  • 这些值显示在最初输入它们的相应字段中
代码:


已对数组进行筛选,以忽略可能潜入的空值

现在,如何使HTML表单显示值?我知道粘性表单,但由于我必须保持表单大小不变(5x2),所以我尝试使用类似以下的代码

<input type="text" value="<?php echo $arrayKeys[0]; ?> ">  
<input type="text" value="<?php echo $arrayValues[0]; ?> ">

如果您只想显示值,则使用
foreach
将非常有用:

foreach ($array_filtered as $k=>$v) {
   echo "<input type='text' value='".$k."'>";
   echo "<input type='text' value='".$v."'>";
}
foreach($array\u筛选为$k=>$v){
回声“;
回声“;
}
foreach
在数组中循环<代码>$k
是当前键
$v
是当前值


当然,这应该在表单HTML中。

也许这对您有用:

<?php
    function getPost($param){
        return isset($_POST[$param])?$_POST[$param]:"";
    }
?>
<form action="#" method="post">
    <table>
        <tr>
            <td>Name</td><td>Age</td>
        </tr>    
        <tr>
            <td><input type="text"  name="name1" value="<?= getPost("name1") ?>"></td>
            <td><input type="text"  name="name2" value="<?= getPost("name2") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name3" value="<?= getPost("name3") ?>"></td>
            <td><input type="text"  name="name4" value="<?= getPost("name4") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name5" value="<?= getPost("name5") ?>"></td>
            <td><input type="text"  name="name6" value="<?= getPost("name6") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name7" value="<?= getPost("name7") ?>"></td>
            <td><input type="text"  name="name8" value="<?= getPost("name8") ?>"></td>
        </tr><tr>
            <td><input type="text"  name="name9" value="<?= getPost("name9") ?>"></td>
            <td><input type="text"  name="name10" value="<?= getPost("name10") ?>"></td>
        </tr>
        <tr>
            <td><input type="submit" value="submit" name="submit"></td>
        </tr>
    </table>
</form>

姓名

如果数组为5x2,则应增加到4而不是5。。。0,1,2,3,4=5值感谢您指出,但这并不能解决原来的问题。为什么要再次过滤掉空值?似乎如果你停止这样做,你的问题就会消失..如果我不过滤空值,从包含空值的表单生成的数组所有你的工作都是基于所有内容的位置值。。。如果您过滤掉了值,那么在恢复表单时,您就不可能知道空格在哪里了。非常抱歉..有一个输入错误$数组_filtered=数组_filter($contacts_array);我已经编辑了主要问题……哎哟。删除段落:(
<?php
    function getPost($param){
        return isset($_POST[$param])?$_POST[$param]:"";
    }
?>
<form action="#" method="post">
    <table>
        <tr>
            <td>Name</td><td>Age</td>
        </tr>    
        <tr>
            <td><input type="text"  name="name1" value="<?= getPost("name1") ?>"></td>
            <td><input type="text"  name="name2" value="<?= getPost("name2") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name3" value="<?= getPost("name3") ?>"></td>
            <td><input type="text"  name="name4" value="<?= getPost("name4") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name5" value="<?= getPost("name5") ?>"></td>
            <td><input type="text"  name="name6" value="<?= getPost("name6") ?>"></td>
        </tr>
        <tr>
            <td><input type="text"  name="name7" value="<?= getPost("name7") ?>"></td>
            <td><input type="text"  name="name8" value="<?= getPost("name8") ?>"></td>
        </tr><tr>
            <td><input type="text"  name="name9" value="<?= getPost("name9") ?>"></td>
            <td><input type="text"  name="name10" value="<?= getPost("name10") ?>"></td>
        </tr>
        <tr>
            <td><input type="submit" value="submit" name="submit"></td>
        </tr>
    </table>
</form>