Php 将数组发布到网页

Php 将数组发布到网页,php,html,Php,Html,它有错误,因为无法访问$\u POST['sub1'] 是否有任何方法或解决方案响应$u POST['sub1']的值?还是不可能?不行?即使使用其他阵列? 我对我的代码有疑问没人能解决!然后我决定用一种简单的方式说出来 <html> <form method="post"> <input type='submit' name='sub1' value='sub1'> <?php if(array_key_exists('sub1',$_POST)) {

它有错误,因为无法访问$\u POST['sub1'] 是否有任何方法或解决方案响应$u POST['sub1']的值?还是不可能?不行?即使使用其他阵列? 我对我的代码有疑问没人能解决!然后我决定用一种简单的方式说出来

<html>
<form method="post">
<input type='submit' name='sub1' value='sub1'>
<?php
if(array_key_exists('sub1',$_POST))
{
echo"<input type='submit' name='sub2' value='sub2'>";
}
if(array_key_exists('sub2',$_POST))
{
echo $_POST['sub1'];
}
?>
</form>
</html>


您正在使用提交按钮。只有您实际单击的按钮才会将其名称/值对发送到服务器。单击
sub2
按钮时,只发送
sub2=sub2
,因此
sub1
将不存在于$\u POST数组中


后续行动:

$\u POST由PHP根据从浏览器发送的内容为您创建。您构建表单的方式使得当您单击“sub2”按钮时,“sub1”不可能存在。换句话说,您需要对两个按钮使用相同的
名称=
,并根据需要更改
值=

html:


我想我知道这里出了什么问题

当您第二次提交表单(对于sub2)时,您不再随附sub1的值,而是sub2

这应该可以解决这个问题:

<html>
<form method="post">
<input type='submit' name='sub1' value='sub1'>
<?php
if(array_key_exists('sub1',$_POST))
{
echo"<input type='hidden' name='sub1' value='" . htmlentities($_POST['sub1']) . "'>";
echo"<input type='submit' name='sub2' value='sub2'>";
}
if(array_key_exists('sub2',$_POST))
{
echo $_POST['sub1'];
}
?>
</form>
</html>


我甚至无法将其存储在数组中,然后你告诉我这是不可能的?你是对的,但我有许多数组密钥,我不能使用相同的名称,但是感谢你的关注Mark Byes非常具体!因为当我发布sub1时,它只有sub1,当我发布sub2时,它有sub2,sub1的值不会被保持,我知道Mark B是正确的,但我想要一个答案是或否,我可以存储值还是否?这是不可能的是,当然可能。干得好,天才!非常感谢。你不知道你帮了我多少!
if (isset($_POST['submit'])) {
   echo "You clicked the {$_POST['submit']} button";
}
<html>
<form method="post">
<input type='submit' name='sub1' value='sub1'>
<?php
if(array_key_exists('sub1',$_POST))
{
echo"<input type='hidden' name='sub1' value='" . htmlentities($_POST['sub1']) . "'>";
echo"<input type='submit' name='sub2' value='sub2'>";
}
if(array_key_exists('sub2',$_POST))
{
echo $_POST['sub1'];
}
?>
</form>
</html>