Php 提交表单后显示所选值
我知道这应该很容易,但我没能做到。 我有以下表格:Php 提交表单后显示所选值,php,html,Php,Html,我知道这应该很容易,但我没能做到。 我有以下表格: <form action="" method="post"> <input type="checkbox" name="blades[]" value="2" />Blade AM-01 <br /> <input type="checkbox" name="blades[]" value="5" />Blade AM-02 <br /> <input type="checkbo
<form action="" method="post">
<input type="checkbox" name="blades[]" value="2" />Blade AM-01 <br />
<input type="checkbox" name="blades[]" value="5" />Blade AM-02 <br />
<input type="checkbox" name="blades[]" value="10" />Blade KT-24 <br />
<input type="checkbox" name="blades[]" value="1" />Blade FR-98 <br />
<input type="checkbox" name="blades[]" value="66" />Blade PR-11 <br />
</form>
叶片AM-01
刀片AM-02
叶片KT-24
叶片FR-98
刀片PR-11
提交后,我想再次显示表单,并选中用户在提交前选择的复选框。我选择的语言是PHP
谢谢。如果我选中前三个复选框,那么
$\u POST
将是:
Array ( [blades] => Array ( [0] => 2 [1] => 5 [2] => 10 ) )
如果我选中第一个、第三个和第五个复选框:
Array ( [blades] => Array ( [0] => 2 [1] => 10 [2] => 66 ) )
这是通过以下方式完成的:
print_r($_POST);
如您所见,$\u POST['blades']
是一个包含每个选定值的数组
我的完整测试代码是:
<form action="" method="post">
<input type="checkbox" name="blades[]" value="2" />Blade AM-01 <br />
<input type="checkbox" name="blades[]" value="5" />Blade AM-02 <br />
<input type="checkbox" name="blades[]" value="10" />Blade KT-24 <br />
<input type="checkbox" name="blades[]" value="1" />Blade FR-98 <br />
<input type="checkbox" name="blades[]" value="66" />Blade PR-11 <br />
<input type="submit">
</form>
<?php print_r($_POST); ?>
叶片AM-01
刀片AM-02
叶片KT-24
叶片FR-98
刀片PR-11
value=“2”/>刀片AM-01
value=“5”/>刀片AM-02
value=“10”/>叶片KT-24
value=“1”/>刀片FR-98
value=“66”/>刀片PR-11
类似的方法应该可以:
<form action="" method="post">
<input type="checkbox" name="blades[]" value="2" <?=(in_array("2", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade AM-01 <br />
<input type="checkbox" name="blades[]" value="5" <?=(in_array("5", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade AM-02 <br />
<input type="checkbox" name="blades[]" value="10" <?=(in_array("10", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade KT-24 <br />
<input type="checkbox" name="blades[]" value="1" <?=(in_array("1", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade FR-98 <br />
<input type="checkbox" name="blades[]" value="66" <?=(in_array("66", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade PR-11 <br />
</form>
啊,但是<代码>$blades[n]
可能不是您所期望的$blades[3]
只有在前面的三个复选框都选中的情况下才是1
。如果我只选择了第一个和第四个,那么$blades[1]
实际上是1
,因为未选中的第二个和第三个复选框在数组中没有位置。
<form action="" method="post">
<input type="checkbox" name="blades[]" value="2" <?=(in_array("2", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade AM-01 <br />
<input type="checkbox" name="blades[]" value="5" <?=(in_array("5", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade AM-02 <br />
<input type="checkbox" name="blades[]" value="10" <?=(in_array("10", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade KT-24 <br />
<input type="checkbox" name="blades[]" value="1" <?=(in_array("1", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade FR-98 <br />
<input type="checkbox" name="blades[]" value="66" <?=(in_array("66", $_POST['blades']) ? "checked='checked'" : "") ?> />Blade PR-11 <br />
</form>