我正在创建一个PHP文件,我想做的一件事是有一个数组(例1)。根据我的理解,Array就像一个列表,我想在列表中输入项目(例2)。但是数组中的项目数需要通过HTML表格输入的数字来确定(例3)。
示例1:
<?php
$a=array("red","green");
array_push($a,"blue","yellow");
print_r($a);
?>
</body>
</html>
</code>
示例2:
<!DOCTYPE html>
<html>
<body>
<?php
$a=array("red","green");
array_push($a,"$_POST["color3"]","$_POST["color4"]");
print_r($a);
?>
</body>
</html>
示例3。
<ol>
<form action="finished.php" method="post">
<li><input type="text" name="color3"></li>
<li><input type="text" name="color4"></li>
</form>
</ol>
编辑:
我希望这一切都格式正确,你理解这个问题。
重申:第一页是空白的,只有一个表格;单输入框,您可以在其中键入任意数字(X)。
第二页有一遍又一遍重复的相同行(取决于上一页的数字X),它的行是:
<li><input type="text" name="color Y"></li>
Y应无限地从1开始计数直到达到X.
最后一页将所有内容打印在一个列表中(数组?)。
例如:在第一页,我们输入数字3。 在第二页,我们有3个框用于输入我们选择的颜色的名称:红色,蓝色,黄色。 在最后一页上,我们显示了三种颜色的列表:红色,蓝色和黄色。
希望这有帮助。
答案 0 :(得分:2)
$_POST['data'];
print_r($_POST);//print out the whole post
print_r($_POST['data']); //print out only the data array
然后在finished.php中
if
答案 1 :(得分:1)
我想我得到了你想要的东西(不止一次阅读之后)。如果我理解正确,请告诉我。假设您正在使用3个不同的文件(正如您在问题中所写的那样)。
file1.php (一个包含1个输入和1个提交按钮的简单表单):
<form action="file2.php" method="post">
<input type="text" name="amount" placeholder="The amount of elements">
<input type="submit" value="Enter">
</form>
file2.php (检查是否$_POST
且值是整数):
if (!empty($_POST['amount'])) {
if (!is_int($_POST['amount'])) {
exit('Not an integer');
}
?>
<form action="file3.php" method="post">
<?php
for ($i = 0; $i < $_POST['amount']; $i++) {
echo '<input type="text" name="colors[]" placeholder="Enter color name"><br>';
}
?>
<input type="submit" value="Done">
</form>
<?php
} else {
exit('Only $_POST method is allowed.');
}
file3.php (获取所有结果并将数组存储在变量中):
if (!empty($_POST)) {
$colors = $_POST['colors'];
foreach ($colors as $color => $value) {
echo '<li>'.$value.'</li>';
}
exit;
} else {
exit('Only $_POST method is allowed.');
}
我们可以添加更多安全性(比如检查它是否为空等),但我只是添加基本内容。