Warum wird mein Benutzer nicht übergeben?
|
Verfasser |
Nachricht |
|
Beiträge: 398
Bewertung: 1
Registriert seit: Feb 2008
Status:
offline
|
Warum wird mein Benutzer nicht übergeben?
Habe hier dieses Script
if ($_POST[submit]){ $usernick = ''; if (isset ($_POST['usernick'])) { $usernick = $_POST["usernick"]; } else { echo "$usernick"; die('Kein Benutzer Übergeben'); } $sqlSecureUsernick = mysql_real_escape_string($usernick);
$emailnick = ''; if (isset ($_POST['emailnick'])) { $emailnick = $_POST["emailnick"]; } else { die('Kein Benutzer Übergeben'); } $sqlSecureEmailNick = mysql_real_escape_string($emailnick);
$kommentar = ''; if (isset ($_POST['kommentar'])) { $kommentar = $_POST["kommentar"]; } else { die('Kein Benutzer Übergeben'); } $sqlSecureKommentar = mysql_real_escape_string($kommentar);
$ip=getenv("REMOTE_ADDR"); $timeget = time(); $datum = date("d.m.Y",$timeget); $timeget = time(); $uhrzeit = date("H:i",$timeget);
$eintrag = "INSERT INTO kommentar (username, usernick, email, ip, uhrzeit, datum, kommentar) VALUES ('$username', '$sqlSecureUsernick', '$sqlSecureEmailNick', '$ip', '$uhrzeit', '$datum', '$sqlSecureKommentar')"; $eintragen = mysql_query($eintrag); echo "Ihr Kommentar wurde gespeichert!"; }else{ echo "Gebe deinen Kommentar zu dem Auto von $username ab!"; echo '<form action="'.htmlentities($_SERVER['PHP_SELF']).'" method="post">'; echo 'Dein Username:<br> <input type="text" size="24" maxlength="50" name="usernick"><br>
Deine Email Adresse:<br> <input type="text" size="24" maxlength="50" name="emailnick"><br>
Dein Kommentar:<br> <textarea name="kommentar" cols="50" rows="10"></textarea><br>';
echo '<input type="submit" name="submit" value="Abschicken" />'; echo '</form>'; }
jedoch wird mir immer nur angezeigt es wird kein benutzer übergeben..
Wieso?
|
|
04.03.2013 23:43 |
|
|
Beiträge: 129
Bewertung: 0
Registriert seit: Feb 2013
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Es wäre vielleicht hilfreich nicht immer die selbe Meldung rauszugeben, egal, was fehlt
|
|
04.03.2013 23:51 |
|
|
Beiträge: 398
Bewertung: 1
Registriert seit: Feb 2008
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Habe ich bearbeitet ^^ Nachdem ich es auch gesehen habe xD
Fehler bleibt aber
|
|
04.03.2013 23:53 |
|
|
Beiträge: 1.385
Bewertung: 48
Registriert seit: Dec 2011
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Ich würde auch anstatt mit real_escape_string mit Prepared Statements arbeiten, um die Sicherheit zu erhöhen. Und wegen dem eigentlichen Problem muss ich Buchstabensalat zustimmen, verschiedene Meldungen würden helfen, das Problem zu lokalisieren.
|
|
04.03.2013 23:54 |
|
|
Beiträge: 398
Bewertung: 1
Registriert seit: Feb 2008
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Habe ja bereits geschrieben das ich es geändert habe aber trotzdem der gleiche Fehler bleibt der gibt mir nicht die Daten aus dem Formular aus
|
|
04.03.2013 23:57 |
|
|
Beiträge: 1.385
Bewertung: 48
Registriert seit: Dec 2011
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Könntest du einmal das neue Skript posten und vllt auch einen Demolink bereitstellen, damit ich mir ein Bild machen kann?
|
|
04.03.2013 23:59 |
|
|
Beiträge: 129
Bewertung: 0
Registriert seit: Feb 2013
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
Mal davon abgesehen, dass ich mir nicht sicher bin, ob die erste zeile nicht eher $_POST['submit'] lauten muss.
Sicher, dass der Fehler in diesem teilabschnitt liegen muss? Weil das scheint ja nicht das komplette script zu sein. (irgendwo wird ja auch noch $username gesetzt z.b.)
|
|
05.03.2013 00:02 |
|
|
Beiträge: 398
Bewertung: 1
Registriert seit: Feb 2008
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
if ($_POST[submit]){ $user = ''; if (isset ($_POST['user'])) { $user = $_POST["user"]; } else { echo "$user"; die('Kein Benutzer Übergeben'); } $sqlSecureUser = mysql_real_escape_string($user);
$emailnick = ''; if (isset ($_POST['emailnick'])) { $emailnick = $_POST["emailnick"]; } else { die('Keine Email Übergeben'); } $sqlSecureEmailNick = mysql_real_escape_string($emailnick);
$kommentar = ''; if (isset ($_POST['kommentar'])) { $kommentar = $_POST["kommentar"]; } else { die('Kein Kommentar Übergeben'); } $sqlSecureKommentar = mysql_real_escape_string($kommentar);
$ip=getenv("REMOTE_ADDR"); $timeget = time(); $datum = date("d.m.Y",$timeget); $timeget = time(); $uhrzeit = date("H:i",$timeget);
$eintrag = "INSERT INTO kommentar (username, usernick, email, ip, uhrzeit, datum, kommentar) VALUES ('$username', '$sqlSecureUser', '$sqlSecureEmailNick', '$ip', '$uhrzeit', '$datum', '$sqlSecureKommentar')"; $eintragen = mysql_query($eintrag); echo "Ihr Kommentar wurde gespeichert!"; }else{ echo "Gebe deinen Kommentar zu dem Auto von $username ab!"; echo '<form action="'.htmlentities($_SERVER['PHP_SELF']).'" method="post">'; echo 'Dein Username:<br> <input type="text" size="24" maxlength="50" name="user"><br>
Deine Email Adresse:<br> <input type="text" size="24" maxlength="50" name="emailnick"><br>
Dein Kommentar:<br> <textarea name="kommentar" cols="50" rows="10"></textarea><br>';
echo '<input type="submit" name="submit" value="Abschicken" />'; echo '</form>'; }
Online Demo leider nicht da es aktuell nur offline läuft also auf meinem Rechner
|
|
05.03.2013 00:03 |
|
|
Beiträge: 129
Bewertung: 0
Registriert seit: Feb 2013
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
alternativ kannst du die ja auch mal $_POST komplett ausgeben lassen (print_r($_POST) (dabei würde ich dann empfehlen in den seiten quelltext zu gucken, da der browser die print_r ausgabe natürlich formatiert )
|
|
05.03.2013 00:05 |
|
|
Beiträge: 1.385
Bewertung: 48
Registriert seit: Dec 2011
Status:
offline
|
RE: Warum wird mein Benutzer nicht übergeben?
@Buchstabensalat: die Prüfung einer POST-Variablen ist auch in der von Fredix genannten Form machbar, daran liegt es nicht :/
@Fredix: wird nur der fehlende Username oder auch andere Formularelemente bemängelt?
Der Rest des Scripts bzw. andere Dateien wären hier wie Salat schon sagte hilfreich.
|
|
05.03.2013 00:07 |
|
|