PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Passwort abfrage! (http://www.selfphp.de/forum/showthread.php?t=14949)

Swoosh 25.10.2006 22:31:13

Passwort abfrage!
 
Hallo ich hab ein Problem mit meine Chatlogin die Passwort abfrage ist immer Falsch!
Kann mit jemand helfen?
Also wenn ich falsches Passwort eingeb kommt "Dein Passwort ist falsch" geb ich das Richtige ein kommt "Dein Passwort ist falsch"?
Warum?
Kann mir mal jemand helfen?

PHP-Code:

<?php

                
include('../ini/config.php');

                
$error FALSE// Fehler? Nein!
        
                
if(empty($_POST['name'])) {
                    
$message .= "Du musst deinen Namen angeben!\n<br>\n"// Fehlermeldung
                    
$error TRUE// Fehler? Ja!
                
}
                if(empty(
$_POST['password'])) {
                    
$message .= "Du musst ein Passwort angeben!\n<br>\n"// Fehlermeldung
                    
$error TRUE// Fehler? Ja!
                
}
                
                if(!
$error) {
                            
                            
$sql "SELECT
                                            *
                                    FROM
                                            eds_members
                                    WHERE
                                            account LIKE '"
.$_POST['name']."'";
                
                    
$result mysql_query($sql);
                    
                    if(!
$row mysql_fetch_assoc($result)) {
                            
$message .= "Du bist kein Sch&uuml;ler der Eichendorffschule oder du hasst einen Falschen Namen angegeben!\n";
                            
$error TRUE;
                    }
                    else {
                            if(
md5($row['password']) != $_POST['password']) {
                                        
$message .= "Dein Passwort ist Falsch!\n";
                                        
$error TRUE;
                            }
                            else {
                            
                                    
$message .= "Du wurdest erfolgreich eingeloggt!\n";
                                    
$message .= "<br>\n";
                                    
$message .= "<a href=\"../index.php\">Zum Chat</a>\n";
                                    
$error TRUE;
                            }
                                                    
                    }
                }
                else {
            
                    
                }
                
                echo 
$message;

    
?>

Danke

MfG Swoosh

Andes 25.10.2006 23:11:50

AW: Passwort abfrage!
 
Na, wenn du md5-Summe mit dem Passwort in Klarform vergleichst wird es wohl immer falsch sein. Da ich mal annehme, dass die Passwörter in der DB md5 verschlüsselt hinterlegt sind, solltest du md5 auf deine $_POST['password'] anwenden und nicht auf $row['password'].

Opendix 25.10.2006 23:18:26

AW: Passwort abfrage!
 
PHP-Code:

                            $sql "SELECT 
                                            * 
                                    FROM 
                                            eds_members 
                                    WHERE 
                                            account LIKE '"
.$_POST['name']."'"

sehe ich das richtig, dass da ein LIKE steht? nun der Benutzer der sich anmelden will wird ja wohl seinen korrekten genauen namen wissen mit dem er sich anmelden will...
ausserdem würde ich gleich eine abfrage macht die eien datensatz sucht der diesen benutzernamen mit diesem passwort beinhaltet.
wenn dann ein datensatz zur¨ückgegeben wird, war der login erfolgreich ansonsten nicht!
www.php.net/mysql_num_rows

Swoosh 26.10.2006 11:26:02

AW: Passwort abfrage!
 
ok danke Andes, ne Opedix das funktioniert schon durch das like nimmer er nur den datensatz mit dem account name, das ist wichtig, da ist ein Schulchat für unsere Schule und das muss so sein denn nur Schüler können da Chatten und jeder kann doch wohl seinen namen im format "Vorname.Nachname" schreiben, oder?

Das ist wichtig so denn unsere Schulesystem läuft auch so, und der lehrer will es halt so!

MfG Swoosh

Swoosh 26.10.2006 11:28:19

AW: Passwort abfrage!
 
OK, Danke funktioniert Super! Eigentlich logisch naja bin ja auch nur ein Mensch!

Opendix 26.10.2006 12:50:28

AW: Passwort abfrage!
 
[QUOTE]
ne Opedix das funktioniert schon durch das like nimmer er nur den datensatz mit dem account name, das ist wichtig, da ist ein Schulchat für unsere Schule und das muss so sein denn nur Schüler können da Chatten und jeder kann doch wohl seinen namen im format "Vorname.Nachname" schreiben, oder?
[/QUTOTE]

äää?
Ja, jeder sollte seinen namen so schreiben können und genau darum macht das Like keinen Sinn!

ich würde einfach so machen:
PHP-Code:

$username $_POST['username'];
$password md5($_POST['password']);

//Hier noch die Variabeln überprüfen, Stichwort SQL-Injection!

$query "SELECT spalte1, spalte2, spalte3 FROM benutzer WHERE name='$username' AND password='$password' LIMIT 1";
$insert mysql_query($query) OR die(mysql_error());
if(
mysql_num_rows($insert) == 0){
    die(
'Sie haben keinen Zutritt');
}else{
    
$benutzerdaten mysql_fetch_assoc($insert);
    
//Hier hast du nun so ein Array
    //$benutzerdaten['spalte1']
    //$benutzerdaten['spalte2']
    //usw...




Alle Zeitangaben in WEZ +2. Es ist jetzt 14:23:23 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.