4

私のフォームには、標準の PHP/MySql クエリに基づく次の値があります。

echo "<tr>\n
        <td align='right'><b>Location</b></td>
        <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=$location></td>
    </tr>";

の値$locationが 1 つの単語の場合は適切に表示されますが、複数の単語の場合は、'North Campus' と言うと 'North' のみが表示されます。

ダブルとトリプルをチェックしましたが、正しい値がデータベースにあります。 $location の値に対してエコーを実行すると、正しい値がエコーされますが、上のフィールドに表示されると、最後の単語が切り捨てられます。複数の単語であるすべての変数に対してそれを行っているため、明らかなことを見逃しています。

4

3 に答える 3

8

引用符を忘れました :

echo "<tr>\n
    <td align='right'><b>Location</b></td>
    <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td>
</tr>";

引用符がないと、最初の単語が記録され、他の単語は間違った属性として解釈されます。

于 2012-05-29T19:37:59.227 に答える
5

有効な属性にするには、一重引用符で囲む必要があります。HTML は、値を持たない属性value=North Campusとして解釈されるものvalue="North"として作成されています。Campusを使用しvalue='$location'ます。

于 2012-05-29T19:38:15.760 に答える
4

"をエスケープして引用する必要があります

echo "<tr>\n
        <td align='right'><b>Location</b></td>
        <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td>
    </tr>";
于 2012-05-29T19:37:57.697 に答える