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

passwortüberprüfung

  • Ersteller Ersteller incendium
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
I

incendium

Guest
hi @ all,
habe jetzt an diesem code 1,5 h nach einem fehler gesucht. error reporting findet keinen fehler, doch ausgegeben wird nix.

PHP:
<?php
error_reporting(E_ALL);
$verbindung = mysql_connect("localhost", "deathend93" , "****")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("deathend93") or die ("Datenbank konnte nicht ausgewählt werden");

if($username != ""){
$username = $_POST["username"];
$passwort = md5($_POST["password"]);

$abfrage = "SELECT username, passwort, frei FROM login WHERE username LIKE '.$username.' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($row->passwort == $passwort AND $row->frei == "ja")
    {
    $_SESSION["username"] = $username;
    echo "<a href=\"logged-in.php\">ERFOLG! HIER KLICKEN!</a>";
    }
else
    {
echo"Benutzername oder Passwort falsch!";
    }
}

?>


ich hoffe jemand kann mir helfen
 
ich find kein fehlendes. wo isses denn?
und wieso gibt es error reporting net aus
 
Habs jetzt drei mal durchgelesen, sehe beim besten Willen nicht wo ein Semikolon fehlen sollte. Wie (old user) schon sagte, müsste doch ohnehin ein Fehler angezeigt werden oder nicht?

@(old user): wo hast du denn das $username in der ersten if-Abfrage definiert? Hoffentlich schon vorher und nicht erst nach der Bedingung.

MfG Icy
 
PHP:
$abfrage = "SELECT username, passwort, frei FROM login WHERE username LIKE '.$username.' LIMIT 1";
#php/QuakeNet Tutorial - Verkettungsoperator

Mehr sag ich dazu nicht, den gleichen Fehler hast du bereits im anderen Thread gemacht...

Und ich hab dir schonmal geschrieben, was du mit Usereingaben machen sollst, bevor sie in eine DB kommen :evil:
 
ok jetzt hab ich die usereingaben erst mal vor die if abfrage. geht aber immer noch nicht. ausserdem was soll ich mit ihnen machen bevor sie in eine tabelle kommen?!?

ich will doch nichts rein schrieben sondern was abrufen??

wo fehlt denn das semikolon?
 
ok jetzt hab ich die usereingaben erst mal vor die if abfrage. geht aber immer noch nicht. ausserdem was soll ich mit ihnen machen bevor sie in eine tabelle kommen?!?
Pk, bei dir habe ich das nicht explizit geschrieben, aber du koenntest ruhig ein wenig mehr aufpassen: http://www.html.de/php/14695-acc-aktivierung.html


Es kann ja nicht sein, dass wir dir bei jedem kleinen Fehler den du machst helfen muessen, oder? Lern mal ein wenig selbststaendiger auf Fehlersuche zu gehen:
PHP:
echo "<pre>".$abfrage."</pre>";
 
ok jetzt bin ich endgültig verwirrt was soll das jetzt heißen?
HTML:
echo "<pre>".$abfrage."</pre>";

ich hätte gedacht es fehlt ein semikolon?!?
 
was bringt es mir wenn ich es ausgeben lasse?!?

dann gibt es haller aus:

PHP:
SELECT 
    username,
    passwort,
    frei 
FROM 
    login 
WHERE 
    username = '.$username.'";

sagt doch bitte wo das semikolon fehlt. ich habe die querys eingerückt
 
Und du wunderst dich nicht ueber diese Zeile:
PHP:
    username = '.$username.'";


Und das Semikolon fehlt in der zweiten zeile, hat aber mit diesem Problem nichts zu tun.
 
es gibt ja nicht aus : ...=$username

sonder haller $username ist das, das ich eingegeben habe unter benutzername.

ich find den fehler nicht!

sag mir doch bitte den code
 
es gibt ja nicht aus : ...=$username

sonder haller $username ist das, das ich eingegeben habe unter benutzername.

ich find den fehler nicht!

sag mir doch bitte den code
Du scheinst echt keine Begabung fuer sowas zu haben, bei der Masse an Threads die du bereits gefoeffnet hast...

Das ist das allerletzte mal dass ich dir helfe:
PHP:
$qry = "SELECT
            username,
            passwort,
            frei
        FROM
            login
        WHERE
            username = '".mysql_real_escape_string($_POST['username'])."'";


@Dark D.: Dann halt in der dritten Zeile, hab das <?php nicht mitgezaehlt ;)
Und nein, da muss kein doppeltes Gleichheitszeichen rein...
 
nj ich hab jetz diesen code funkt aber immer nonich

PHP:
<?php
error_reporting(E_ALL);
$verbindung = mysql_connect("localhost", "deathend93" , "****")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("deathend93") or die ("Datenbank konnte nicht ausgewählt werden");

$username = $_POST["username"];
$passwort = md5($_POST["password"]);

if($username != ""){

$abfrage = "
SELECT 
    username,
    passwort,
    frei 
FROM 
    login 
WHERE 
    username == '.$username.'";
    
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
echo "<pre>".$ergebnis."</pre>";
if($row->passwort == $passwort AND $row->frei == "ja")
    {
    $_SESSION["username"] = $username;
    echo "<a href=\"logged-in.php\">ERFOLG! HIER KLICKEN!</a>";
    }
else
    {
echo"Benutzername oder Passwort falsch!";
    }
                  }

?>
 
Wundert dich dieser Absatz nit :-O

PHP:
$abfrage = "
SELECT 
    username,
    passwort,
    frei 
FROM 
    login 
WHERE 
    username == '.$username.'";

1. nur 1 mal "="
2. Achte mal auf die " und '...
und das beste ist, dass es dir ja jemand richtig gezeigt hat^^
 
des versteh ich jetzt net web spider hat mir als pm die lösung geschickt:
PHP:
$abfrage = "
SELECT
    username,
    passwort,
    frei
FROM
    login
WHERE
    username = "'".$username."'";

fehlermeldung: Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /usr/export/www/vhosts/funnetwork/hosting/deathend93/index.php on line 171
aber die funkt auch net. kann mir nicht jemand mal den richtigen code schicken der funkt??!
 
das ist falsch^^

PHP:
$abfrage = "
SELECT
    username,
    passwort,
    frei
FROM
    login
WHERE
    username = '".mysql_real_escape_string($username)."'";
Außerdem hätte dir die Fehlermeldunmg helfen sollen, dass kann man doch sehen, dass ich ausversehen ein " zu viel hatte^^ -.-

//EDIT: Sorry Commodore war schneller ;)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben