2017-02-27 49 views
0

我正在写一些自我生成的HTML输入标签,因此我需要一种方式来与这些说话,以便我可以抓取用户写入的文本。PHP自动生成输入函数的名字

我试过这样做,但它不缝合工作计划,任何好主意?

for ($i = 1; $1 <= 5; $1++) { 
    $Content = $number.$i; 
    $Sum = $_POST[$Content]; 
    $Total = $Total + $Sum 
} 
Echo $Total; 

的想法在这里是我有自动生成的命名“数字1”“号码2”等输入功能。然后我想抓住所有这些并获得它们的价值。有人知道解决这个问题的方法吗?

回答

0

我和其他许多人在刚刚学习时就已经走上了变量变量的路径,而且这是可能的。但这是阵列的用途。定义你的输入作为一个数组:

<input type="text" name="number[]"> 
<input type="text" name="number[]"> 

然后就循环他们:

$total = 0; 
foreach($_POST['number'] as $number) { 
    $total += $number; 
} 

如果要定义键和使用,由于某些原因:

<input type="text" name="number[1]"> 
<input type="text" name="number[2]"> 

然后,你可以使用你的循环风格或:

$total = 0; 
foreach($_POST['number'] as $key => $number) { 
    // use $key somehow 
    $total += $number; 
} 
+0

Awsome! :D非常感谢 – Holycrabbe

0

在for循环中,您正在启动/声明$ i和$ l递增,这是不正确的。分号(;)错过了 。 “$ number”应该是“number”

使用下面的代码。

$Total = '0'; 
for($i=1;$i<=5;$i++){ 
    $Content = "number".$i; 
    $Sum = $_POST[$Content]; 
    $Total = $Total + $Sum; 
} 
echo $Total; 
+0

Hey there:D 感谢您回复我 - 我可以看到,我从来不应该试图解释它有任何不同,那么它是:/对不起,关于该 代码如下所示: for($ i = 1; $ i <6 ; $ i ++){ \t \t $ content =“$ key”。 $ I; \t \t $ pdf->写(5,$ content); \t \t $ pdf-> Ln($ i); \t} 问题出在Write函数首先接受一个int然后接受一个字符串:但是我不能通过字符串创建和过去,我希望:/它是“key1”,“key2” “key3”等等 – Holycrabbe