2012-02-13 87 views
0

我有一個窗體,記錄自動增量中變量名稱的各種字段。 當我救我我的表單變量看起來像自動增加顯示變量

<form> 
<?php 
    $i = 1; 
    foreach ($variables as $var) { 
     echo '<input type="text" name="txt$i" value="$var->name" />'; 
     $i ++; 
    } 
?> 
</form> 

我的問題是如何顯示輸入字段的值,我作出這樣的,但沒有工作

<?php 
    foreach ($variables as $var) { 
     echo $var->txt$i; 
     $i ++; 
    } 
?> 

回答

2

這兩個腳本都有一些bug。這裏他們是固定的。

<form> 
<?php 
$i = 1; 
foreach ($variables as $var) { 
    echo '<input type="text" name="txt' . $i . '" value="' . $var->name . '" />'; 
    $i++; 
} 
?> 
</form> 
<?php 
$i = 1; 
foreach ($variables as $var) { 
    echo $var->{"txt" . $i}; 
    $i++; 
} 
?> 
1

這是發生,因爲使用的是單引號:

echo '<input type="text" name="txt$i" value="$var->name" />'; 

和單引號變量代換不會發生裏面。

而是使用:

echo '<input type="text" name="txt'.$i.'" value="'.$var->name.'" />'; 
+0

您好Codeaddict,感謝您的回答,但如何保存後爲每個功能顯示它? – Tomaw 2012-02-13 11:06:55

-1

不能讓你從你的問題想要什麼。
可能只是

echo $txt.$i; 

+0

Hello Col. Shrapnel, 謝謝你的回答,但它顯示「1」,沒有我的var – Tomaw 2012-02-13 11:08:16

+2

你好Tomaw,感謝你的評論,但你必須提出一個明智的問題才能得到正確的答案。 – 2012-02-13 11:26:55

0

這應該工作,

<form> 
<?php 
    $variables = array("red","yellow","blue","orange","green"); 
    $i = 1; 

foreach ($variables as $var) { 
    $name = "txt".$i; 
    echo "<input type='text' name='".$name."' value='".$var."' />"; 
    $i++; 
} ?> 
</form> 

你需要把變量的雙引號,我認爲這將是更容易地創建一個名字變量和串聯的增加值,它

結束