Formularfelder automatisch füllen
DrSnuggles
- php
0 suit0 Ale×0 DrSnuggles0 suit0 DrSnuggles0 suit
0 Ingo Turski
Mahlzeit Gemeinde!
Bin neu hier und hoffe eine Antwort zu bekommen...
Ich habe ein PHP-Formular (das eigentliche Formular ist in html programmiert) über das mir Kunden Daten mitteilen. Die Daten werden in eine csv-Datei geschrieben.
Die Kunden werden per E-Mail aufgefordert, die Daten über das Formular einzugeben.
Um Übertragungsfehler zu vermeiden, möchte ich dem Kunden in der E-Mail einen Link schicken über den nach Möglichkeit Formularfelder wie z. B. Kundennummer, Name usw. (also Daten die fix sind) schon in das Formular eingetragen werden.
Wie muss ich das anstellen????
Wie muss ich das anstellen????
hinterglege die vorausgefüllten daten mit einer nicht erratbaren id in der datenbank
beim aufrufen des formulars liest du die daten vorher aus und erzeugst damit das formular
Hallo DrSnuggles,
wenn der "Link" in der E-Mail etwa so aussieht:
http://example.org/formular.php?email=user@example.org&nr=123
Kannst Du die Werte folgendermaßen vorbelegen;
<input name="email" value="<?php if(isset($_GET['email'])) echo htmlspecialchars($_GET['email']); ?>" />
<input name="nr" value="<?php if(isset($_GET['nr'])) echo htmlspecialchars($_GET['nr']); ?>" />
Ale×
Hallo Ale×!
Erst einmal besten Dank für die Antwort.
Wie muss ich den Code denn wohl in meinen bestehenden
<td><input name=\"email\" size=\"25\" tabindex=\"16\""; if(!empty($email)) { echo "value=\"$email\"";} echo "></td>
einbauen???
THX DrSnuggles
Wie muss ich den Code denn wohl in meinen bestehenden einbauen???
mit den grundlangen auseinandersetzen oder die ähnlichkeiten zwischen deinem und alex' code zu erkennen, sollte doch nicht so schwer sein?
Erbarmen!
Ich krieg's nicht scharf...
Vielleicht hat ja von Euch Cracks jemand Mitleid mit mir...
DrSnuggles
Ich krieg's nicht scharf...
definiere, was genau das problem ist
Vielleicht hat ja von Euch Cracks jemand Mitleid mit mir...
ich hab kein mitleid mit niemandem, mit mir hatte auch niemand mitleid und ich froh darüber, sonst hätt ich nie etwas gelert ;)
Hi,
Wie muss ich den Code denn wohl in meinen bestehenden
<td><input name=\"email\" size=\"25\" tabindex=\"16\""; if(!empty($email)) { echo "value=\"$email\"";} echo "></td>
einbauen???
zunächst mal ist weder der HTML- noch der PHP-Code sauber. Da Du keine id angegeben hast, hast Du die Nutzung des label-Elements vergessen - und auch noch eine unnötige Tabelle drum gelegt.
Außerdem maskierst Du die Anführungszeichen - warum so umständlich und unübersichtlich?
Da Du ja mehrere Felder füllen möchtest - und das solltest Du nicht nur mit den GET-Parametern tun, sondern ebenfalls mit den eingegebenen POST-Daten im Falle einer Fehlermeldung zur Korrektur - lohnt es sich bereits, eine kleine Funktion zu erstellen:
<?php
function einfuegen($key) {
return (isset($_REQUEST[$key])) ? htmlspecialchars($_REQUEST[$key]) : '';
}
echo '
<p>
<label for="email">E-Mail:</label>
<input id="email" name="email" size="25" value="',einfuegen($email),'" />
</p>';
?>
freundliche Grüße
Ingo
Hi,
<input id="email" name="email" size="25" value="',einfuegen($email),'" />
sorry, da muss natürlich einfuegen('email') rein.
freundliche Grüße
Ingo