Formularwerte übergeben

Erstmal: Assoziative Indizes sollten als Strings gekennzeichnet werden.
Aus $_POST[emailconfirm] wird dann also $_POST['emailconfirm']
Andernfalls wird dort naemlich mit einer undefinierten Konstante gearbeitet. PHP ist in dem Fall zwar so kulant diese als String zu behandeln, aber wenn, dann wollen wir es doch auch gleich richtig lernen, nicht?

Ausserdem frag ich mich wofuer in dem Script Sessions genutzt werden?
Die Session wird dort gestartet, mit Werten gefuettert und dann ungenutzt geloescht. Wo ist der Sinn?
Fuer so ein Script braucht man keine Session.

Vorgehensweise:
  1. Pruefen ob das Formular abgeschickt wurde
  2. Wenn ja, uebergebene Werte pruefen.
  3. Richtige Werte in Variablen speichern.
  4. Formular ausgeben, wenn fuer ein Feld eine Variable gesetzt wurde, diese als Value angeben.
  5. Fertig. Lecker.

Weiterhin sollte Code vernuenftig eingerueckt werden. In dieser Hinsicht ist der Code von Mc Kani eine echte Zumutung.
 
Kein Problem. Bei weiteren fragen helf ich gern weiter ;)
Wenn thema erledigt.
Dann Erledigt markieren bitte :)
Grüße

Edit: // Dennis hat auch recht
Erstmal: Assoziative Indizes sollten als Strings gekennzeichnet werden.
Aus $_POST[emailconfirm] wird dann also $_POST['emailconfirm']
Mein fehler. ;)

@Dennis Session ist dafür da damit nickname und email feld später wenn es mal bei der PASSWORD vergleichung ein fehler auftritt kein leeres feld steht und der REGISTRANT es nicht nochmal wiederholen muß.
Und warum soll SESSION nicht gelöscht werden, wenn die registration erfolgreich war ?

thY Grüße
 
Zuletzt bearbeitet:
Aber das laeuft doch alles im selben Script ab, oder nicht?
Dann braucht man auch nichts in der Session zwischenspeichern.
Ich geh mal fix einkaufen und mach danach dann mal kurz was dazu fertig.
 
Dennis Wronka hat gesagt.:
Aber das laeuft doch alles im selben Script ab, oder nicht?
Dann braucht man auch nichts in der Session zwischenspeichern.
Ich geh mal fix einkaufen und mach danach dann mal kurz was dazu fertig.

hmm jo läuft eigentlich schon alles über selben Script, aber ich hab noch nie gemerkt das es die werte dan selber übernimmt *g* könntest aber recht haben ;):)
Dann mal viel spass beim einkaufen.
 
Juhu *froi* Dennis zeig mal ;) *gespannt bin* :suspekt:

Also ich denke ma Sie ? oder ER ? eher SIE :p hat die beiden Scripte in verschiedenen Dateien, sonst wäre es sinnlos Sessions zu nutzen.

mfg
 
Also, wenn alles in einem Script ist, was ich persoenlich bevorzuge, dann sieht das ungefaehr so aus (ich mach jetzt nicht alle Checks, es soll halt nur klar werden was ich mein):
PHP:
<?php
if (isset($_POST['adduser']))
{
 if (!empty($_POST['username']))
 {
  $username=$_POST['username'];
 }
 if ((!empty($_POST['password1'])) && (!empty($_POST['password2'])) && ($_POST['password1']==$_POST['password2']))
 {
  $password=$_POST['password1'];
 }
 if ((isset($username)) && (isset($password)))
 {
  //User in Datenbank eintragen
  //Mit header() auf eine andere Seite umleiten, z.B. zum Login, oder aber automatisch einloggen und dann direkt die interne Seite praesentieren
  exit;
 }
}
echo '<form method="post" action="'.$_SERVER['PHP_SELF'].'">';
echo 'Username: <input type="text" name="username"';
if (isset($username))
{
 echo ' value="'.$username.'"';
}
echo '><br>';
echo 'Password: <input type="password" name="password1"';
if (isset($password))
{
 echo ' value="'.$password.'"';
}
echo '><br>';
echo 'Confirm Password: <input type="password" name="password2"';
if (isset($password))
{
 echo ' value="'.$password.'"';
}
echo '><br>';
echo '<input type="submit" name="adduser" value="Add User">';
echo '</form>';
 
Ahjoooo so kann es natürlich auch gehen. Aber ich hab das jetzt so wie ich es dort gemacht habe, deswegen gemacht weil ich "denk" mal das unser kolege der das thread geöffnet hat noch ein anfänger ist. + damit es nicht zu viel code gibt.
Warum sollte man session nicht ausnutzen wenn dieses funktion möglich ist ?:)
 
Dennis Vorschlag is schon ideal wenn man keine Fehlerausgabe braucht.
Wenn doch dann ist Javascript eine Lösung aber nicht die beste, da der User es ausschalten kann. Natürlich kann man Sessions nutzen aber wozu wenn man alles auf einer Seite hat ;)

PS. Dein Code war scho bissl mehr :p

mfg
 
Zurück