基本上我想让我的程序做的是询问用户他们想要输入多少个号码。提交值后,程序将获取该值并创建此数量的文本框。每个文本框都将采用一个数字,一旦提交,它应该采用所有数字(不包括初始文本框)并将其存储到数组或其他内容中,以便计算平均值。
我已经能够创建x数量的文本框,但无法找到提交这些值的方法。
<html>
<body>
<form action="means.php" method = "get">
Enter sample size: <input type = "number" name = "size" <br>
<input type = "submit">
<?php
if ( isset($_GET["size"] ) )
{
$size = $_GET["size"];
$count = 1;
while ($count <= $size)
{
echo '<br><input type=\"text\" name=\"textbox".$count."\" />';
$count++;
}
}
?>
</form>
</html>
</body>
我认为问题是创建的文本框正在回显,因此名称为“textbox。$ count。”。不能用来获取数字?
非常感谢任何帮助。提前致谢!
答案 0 :(得分:4)
只需使用PHP的数组表示法表示字段名称:
<input type="text" name="textbox[]" />
^^---force array mode
将在$_POST['textbox']
中生成一个数组,每个文本框的一个元素以textbox[]
名称提交。
e.g:
<input type="text" name="textbox[]" value="1" />
<input type="text" name="textbox[]" value="foo" />
<input type="text" name="textbox[]" value="banana" />
产生
$_POST = array(
'textbox' => array )
0 => 1,
1 => 'foo',
2 = > 'banana'
)
)
您的问题是您使用的是单引号字符串('
),这意味着
$var = 'foo';
echo '$var' // outputs $, v, a, r
echo "$var" // outputs f, o ,o