php:在包含空格的表单中打印出数组

时间:2013-04-30 11:49:13

标签: php forms

我尝试在表单中显示一个数组,该数组工作正常,除了包含空格“街道号”的数组值,然后它只显示街道。 如果我在它工作的形式之外回显它,但不在形式和循环内:

        //This is able to show Street and Number
        echo $Kundendatenarry[4];
        //within the loop and the form it is not working anymore it is only shwoing the street:
        echo"<form name='form1' method='post' action='KundeundAutoBearbeiten_Update.php' accept-charset='UTF-8'>";
        for ($i=1, $max=$Kundendaten->FieldCount(); $i < $max-3; $i++)
            {
                echo"<pre><input size='50' name='name' type='text' id='name' value=".$Kundendatenarry[$i]."></pre><br>";
            }               
        echo"<input type='submit' name='senden' value='Daten Ändern'><br>";
        echo "</form>";

我想“&lt; pre&gt;”可以提供帮助,但事实并非如此。

有谁可以告诉我我做错了什么?

这些是数据库条目:

echo $Kundendaten

ID,Titel,Vorname,Nachname,Strasse_Hausnummer,Postleitzahl,Stadt,Telefon,EMail,Kommentar,Weihnachtskarte,Erzeugt,Geaendert 11111 ,, Kurt,Heiz,Rumpenheimerstraße121,15625,Offenbach ,,,, 0 ,, - &GT;除了Rumpenheimerstraße121之外,它是完全打印的 - &gt;在这里打印出Rumpenheimerstraße而不是121

2 个答案:

答案 0 :(得分:3)

输入值周围没有字符串标记:

echo"<pre><input size='50' name='name' type='text' id='name' value=".$Kundendatenarry[$i]."></pre><br>";

应该是:

echo '<input size="50" name="name" type="text" id="name" value="'.htmlspecialchars($Kundendatenarry[$i]).'"/><br>';

我也添加htmlspecialchars()作为防止用户数据破坏html的常见做法

答案 1 :(得分:1)

首先尝试使用此get结果,然后在html脚本中回显该结果

<?php 
 foreach(condition){
 ?>

<form name='form1' method='post' action='KundeundAutoBearbeiten_Update.php' accept-charset='UTF-8'>

<pre><input  name='name' type='text' id='name' value="<?php echo $Kundendatenarry[$i] ?>"></pre><br>
 <input type='submit' name='senden' value='Daten Ändern'><br>
 </form>
<?php 
 }
 //foreach ends
 ?>

奇怪的错误,但你可以使用它来解决问题