• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Felder sind leer trotz abfrage

JoKaBo

Mitglied
Guten Abend Community,

Ich bin grade dabei ein Login Script zu basteln. Ich habe erstmal abgefragt, ob die felder gesetzt sind und ob sie nicht leer sind.
Im SQL String sind aber dann die Variablen leer :(
Code:
[CENTER][COLOR=#000000][FONT=Times New Roman]SELECT * FROM `Login` WHERE `E-Mail` = '' AND `Passwort` = '' LIMIT 0 , 30[/FONT][/COLOR][/CENTER]


Hier mal mein Code:

Code:
if(isset($_POST['login'])){     
          if(!isset($_POST['email']) || !isset($_POST['pass'])){$fehler = $fehler . 'Bitte setzten sie alle Felder<br />';}          
          if($_POST['email'] == "" || $_POST['pass'] = ""){$fehler = $fehler .'Sie müssen alle Felder füllen<br />';}
          
          if($fehler != ""){echo "<font color='red'>" .$fehler . "</font>";}else{
               $verbindung = mysql_connect($Server['mysql']['host'], $Server['mysql']['benutzer'] , $Server['mysql']['passwort']);
               mysql_select_db($Server['mysql']['datenbank'], $verbindung);
               
               $mail = strip_tags($_POST['email']);
               $pass = strip_tags(md5($_POST['pass']));
               if(mysql_errno($verbindung) == 0){
                    $sql = sprintf("SELECT * FROM  `Login` WHERE  `E-Mail` =  '%s' AND  `Passwort` =  '%s' LIMIT 0 , 30",
                              mysql_real_escape_string(strip_tags($_POST['email'])),
                              mysql_real_escape_string(strip_tags(md5($_POST['pass']))));
                    $result = mysql_query($sql);
                    $resultnum = mysql_num_rows($result);;
                    echo 'SQL:' . $sql;
                    if($resultnum > 0) {
                         $_SESSION[ 'login'] =array('Email' => $mail);
                         echo "erfolg";
                    }else{
                         echo "fehler";
                    }
               }else{
                    echo "Fehler" . mysql_errno($verbindung) . "->" . mysql_error($verbindung);
               }
             mysql_close($verbindung);
        }
}

vil. Könnt ihr mir ja sagen, warum die Variablen bzw. POST Felder leer sind ...

Mit Freundlichen Grüßen
JoKaBo
 
Zuletzt bearbeitet:
Werbung:
Grundsätzlich wäre hier natürlich interessant, wie das Formular aussieht, das die Daten zur Verfügung stellen soll. Wenn du aber in deinem PHP-Code vor dem ersten if(...) diese Zeile hier einfügst:
PHP:
    var_dump($_POST);
bekommst du alles angezeigt, was in deinem $_POST-Array zur Verfügung steht. Lesbarer wird die Anzeige wenn du stattdessen
PHP:
    echo "<pre>";
    var_dump($_POST);
    echo "</pre>";
schreibst.
Warum rufts du mysql_real_escape_string(...) auf, wenn du den Rückgabewert nicht benutzt?
Und: wenn du deinen PHP-Code statt mit [C O D E ] als [P H P] anzeigst, ist er noch lesbarer ...
 
Weil, das dan eine scheiss formation wahr das wahren dan 2 zeilen code die und endlich in die länge gehen ... werde das mit var_dump mal ausprobieren und den restlichen html code mal Posten wen ich das am pc bin ..
 
Werbung:
Hier mal die ausgaben, hier von var_dump:
Code:
[CENTER][COLOR=#000000][FONT=Times New Roman]array(3) { ["email"]=> string(20) "[email protected]" ["pass"]=> string(7) "michael" ["login"]=> string(6) "Senden" }[/FONT][/COLOR][/CENTER]
und hier der sql string:

Code:
[CENTER][COLOR=#000000]SELECT * FROM `Login` WHERE `E-Mail` = '' AND `Passwort` = '' LIMIT 0 , 30[/COLOR][/CENTER]

hier könnt ihr die Datei downloaden:
http://webinterface.biocentertainment.de/download/index.rar

Hoffe ihr könnt mir Helfen.

Mir freundlichen grüßen
JoKaBo
 
Du hast hier einen fehlerhaften Vergleich:

PHP:
if($_POST['email'] == "" || $_POST['pass'] = "")

Fällt dir was auf? ;)
 
Werbung:
Falsch:
PHP:
if($_POST['email'] == "" || $_POST['pass'] = "")

Richtig:
PHP:
if($_POST['email'] == "" || $_POST['pass'] == "")

Und jetzt? ;)
 
aso ja jetzt :) aber das wahr noch.der fehler warum die felder leer sin weil gefült sibd sie ja nur im string gehts net ...
 
Zurück
Oben