Hallo,
Ich moechte bei einem Eingabefeld schon vor der Eingabe eine vorgefertigte Eingabe dem Benutzer als Option anbieten. Folgendes habe ich probiert:
echo '<label>Benutzername: <input type="text" name="Benutzername" id="'.$row['Name'].'">'.$row['Name'].'</input></label>';
der Vorgabewert ist der Wert des value-Attributes, siehe SELFHTML, <http://de.selfhtml.org/html/formulare/eingabe.htm#felder_vorbelegung@title=Textvorbelegung bei einzeiligen Eingabefeldern>. Wie man das label-Element verwendet, steht im Abschnitt <http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=Label für Elemente>
Wie muss ich es machen, damit der Name schon im Eingabefeld ist?
Da Deine Variable Zeichen enthalten könnte, die im HTML-Kontext Probleme bereiten könnten, solltest Du diese mit htmlspecialchars() behandeln. Somit kommen wir zu:
echo '<label for="Benutzername">Benutzername:</label><input type="text" name="Benutzername" id="Benutzername" value="', htmlspecialchars($row['Name']), '">';
Falls Du XHTML verwendest, solltest Du das input-Element entsprechend schließen:
echo '<label for="Benutzername">Benutzername:</label><input type="text" name="Benutzername" id="Benutzername" value="', htmlspecialchars($row['Name']), '" />';
Lesbarer wird es durch Verwendung der Funktion printf():
# %s steht in der Formatzeichenkette für einen Platzhalter, der durch eine
# Zeichenkette ersetzt wird
$format = '[code lang=html]<label for="Benutzername">Benutzername:</label><input type="text" name="Benutzername" id="Benutzername" value="%s" />
~~~';
# Gebe die Formatzeichenkette aus, wobei der Platzhalter durch den
# kontextgerecht aufbereiteten Inhalt Deiner Variablen ersetzt wird.
printf ($format, htmlspecialchars($row['Name']));[/code]
Freundliche Grüße
Vinzenz