gpt4 book ai didi

具有多行的 PHP $_POST 数组

转载 作者:行者123 更新时间:2023-11-29 01:36:20 25 4
gpt4 key购买 nike

我一直在阅读由 $_POST 在 PHP 中创建的数组。我知道如果我提交一个包含以下输入的表单 ID, Name, Date 我最终会得到一个包含 $_POST = array('IDNo', 'Name', '日期”、“州”)。我想说的是,我将同时提交多个 IDNo, Name, Date, State 实例。

我相当确定我可以在提交数据后对其进行处理和清理,但我不确定如何将其放入多行数组中。

<form method="post" action="test.php">
<input type="hidden" name="IDNo" />
<input type="text" name="Name" />
<input type="text" name="Date" />
<input type="radio" name="State1" />

<input type="hidden" name="IDNo" />
<input type="text" name="Name" />
<input type="text" name="Date" />
<input type="radio" name="State2" />

<input type="hidden" name="IDNo" />
<input type="text" name="Name" />
<input type="text" name="Date" />
<input type="radio" name="State3" />

<input type="submit" value="Test Me" />
</form>

您会注意到,单选输入的每一行都有一个唯一的名称。这个跟页面上实现的一些jquery有关。我已经看到 IDNo[]Name[] 等被使用,因为这会在 $_POST 数组中创建数组,但是我在 radio 上的唯一输入名称不起作用有了这个,因为每个 radio 输入将是一个不同的数组

将 IDNo 或行号附加到每个输入名称会更好,还是有另一种我没见过的方法可以解决这个问题?

也许通过将 State1 更改为 state[1] 并将 IDNo, Name, Date 更改为 ID[1], HTML 中的名称[1]、日期[1]
对我来说,关键是我要正确地做到这一点,而不会产生任何不安全的东西。

最佳答案

有很多方法可以做到这一点。一个是:

<?php $states = array(1,2,3); ?>
<form method="post" action="test.php">
<?php foreach ( $states as $state ) : ?>
<input type="hidden" name="<?php echo 'state['.$state.']'; ?>[IDNo]" />
<input type="hidden" name="<?php echo 'state['.$state.']'; ?>[Name]" />
<input type="hidden" name="<?php echo 'state['.$state.']'; ?>[Date]" />
<input type="hidden" name="<?php echo 'state['.$state.']'; ?>" />
<?php endforeach; ?>
<input type="submit" value="Test Me" />
</form>

您可以使用 $_POST['state'][1]['Name'] 之类的代码访问这些值

您可以扩展 $states 数组以保存更多信息。

关于具有多行的 PHP $_POST 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42325730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com