我设计了一个HTML表单,如下所示:
<form action="sample_test.php" method="post">
<input type="text" name="fileName" value="8.png" id="fileName[]">
<input type="text" name="fileLink" value="https://www.filepicker.io/api/file/zZ993JyCT9KafUtXAzYd" id="fileLink[]">
<input type="text" name="fileName" value="2_OnClick_OK.jpg" id="fileName[]">
<input type="text" name="fileLink" value="https://www.filepicker.io/api/file/1w3cKCW1TMmytb7md3XQ" id="fileLink[]">
<input type="submit" name="Submit" value="Submit File">
</form>
sample_test.php中的代码如下:
<?php
print_r($_POST); die;
?>
我得到的输出如下:数组([fileName]=>2_OnClick_OK.jpg[fileLink]=>https://www.filepicker.io/api/file/1w3cKCW1TMmytb7md3XQ[提交]=>提交文件)
但这并不是想要的结果。我希望以以下方式打印所需的输出阵列:
Array
(
[8.png] => Array
(
[0] => https://www.filepicker.io/api/file/zZ993JyCT9KafUtXAzYd
)
[2_OnClick_OK.jpg]
(
[0] => https://www.filepicker.io/api/file/1w3cKCW1TMmytb7md3XQ
)
)
目前,我只演示了两个元素,但在实际情况下,表单上可能会出现数百个这样的元素
那么,我需要对HTML和PHP代码进行哪些更改呢?请帮帮我。
提前谢谢。
只需修改HTML代码就无法实现您的要求,因为您希望(fileName的)值成为您获得的数组中的索引。这是不可能的,索引将始终是输入的名称。
然而,如果你看一下这里:张贴具有相同名称属性的表单字段,你将能够获得fileName和fileLink的数组,我相信你可以从那里做一些事情。
有一些错误,但您已经接近了。让name字段成为一个数组,而不是id-加上你的id需要是唯一的。
<input type="text" name="fileName[]" value="8.png" id="fileName1">
<input type="text" name="fileLink[]" value="https://www.filepicker.io/api/file/zZ993JyCT9KafUtXAzYd" id="fileLink1">
<input type="text" name="fileName[]" value="2_OnClick_OK.jpg" id="fileName2">
<input type="text" name="fileLink[]" value="https://www.filepicker.io/api/file/1w3cKCW1TMmytb7md3XQ" id="fileLink2">
没有经过测试,但应该会成功。