php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.05.2005, 17:57  
Gast
 
Beiträge: n/a
Standard [Erledigt] Username und Passwort auslesen!?!? Fehler im scrippt?!?

HI@all
Ich hab den folgenden script geschrieben und er sollte eigentlich, das Passwort zu dem eingegeben User aus der Tabelle "suchen". Funzt aber nich, könnt ihr mir sagen warum?

PHP-Code:
<?php


$verbindung 
mysql_connect ("localhost","user""passwort") or die ("User und/oder Passwort falsch");
mysql_select_db("fagro");

//Verbindung zur Datenbank

$username4pw $_POST['username'];
$pw4user $_POST['passwort'];

$abfrage "SELECT passwort FROM benutzer WHERE username LIKE $username4pw";
$ergebnis mysql_query($abfrage);

while(
$endpw mysql_fetch_object($ergebnis))
   {
if (
$pw4user == $endpw)
  {
   
$ergebnis mysql_query($abfrage);
   while(
$row mysql_fetch_object($ergebnis))
   {
   echo 
"$row->vorname
 $row->nachname
 $row->strasse
 $row->ort
 $row->plz 
"
;
   }

   }


   }


?>
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.05.2005, 17:59  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

um dein benuternamen gehören ' sonst denkt er der wert von dem inahlt der variable wäre eine spalte.

desweiteren:

mysql error
man sollte in seinen Scripten immer mysql_error() verwenden, in etwa so:
PHP-Code:
$sql "SELECT feld1,feld2 FROM table WHERE id=5";
$result mysql_query($sql) or die(mysql_error().'
Query: '
.$sql); 


mfg
robo47
robo47 ist offline   Mit Zitat antworten
Alt 17.05.2005, 21:29  
Gast
 
Beiträge: n/a
Standard

Wo meins du müssen ' hin???

PHP-Code:
$abfrage "SELECT passwort FROM benutzer WHERE username LIKE[b]'$username4pw'[/b]"
<--da?? das funzt nicht.
  Mit Zitat antworten
Alt 17.05.2005, 22:55  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
// die die()-Nachricht führt den Benutzer in die Irre; besser die('Datenbankverbindung konnte nicht erstellt werden')
$verbindung mysql_connect ("localhost","user""passwort") or die ("User und/oder Passwort falsch");
 
// mysql_select_db kann auch schief gehen, also auch or die(...)
// wenn Du die Datenbankverbindung schon speicherst, kannst Du sie auch gleich bei select_db mit angeben
// -> mysql_select_db("fagro", $verbindung) or die(mysql_error());
mysql_select_db("fagro");

// sind die Parameter überhaupt gesetzt?
// abprüfen mit isset(), sonst ist die ganze Abfrage sinnlos -> Abbruch
// wenn Du die Werte schon einer neuen Variable zuweist (warum eigentlich?), dann nutze doch gleich
// die Gelegenheit, die in der Abfrage benutzen Parameter gegen Misbrauch zu schützen
// $username4pw = mysql_real_escape_string($_POST['username'], $verbindung);
$username4pw $_POST['username'];
$pw4user $_POST['passwort'];

// hier halt die ' einfügen: "SELECT passwort FROM benutzer WHERE username LIKE '$username4pw'"
$abfrage "SELECT passwort FROM benutzer WHERE username LIKE $username4pw";
// kein Test, ob die Abfrage evtl. schiefgelaufen ist - z.B.: or die(mysql_error())
$ergebnis mysql_query($abfrage);
// Wieviele Benutzer mit der selben Kennung gibt es denn? Vermutlich doch wohl nur jeweils einen
// also reicht ein if statt der while-Schleife
while($endpw mysql_fetch_object($ergebnis))
{
    
// $endpw stellt nun den gesamten Datensatz als Objekt dar.
    // $endpw->passwort steht für den Wert des Feldes 'passwort' in diesem Datensatz
    // dieser Vergleich hier ist also falsch
    
if ($pw4user == $endpw)
  {
        
// noch einen Datensatz abholen? - Welcher kann das nur sein?
        
$ergebnis mysql_query($abfrage);
        
// wieviele Datensätze denn noch?
        
while($row mysql_fetch_object($ergebnis))
        {
            
// wo kommen denn die ganzen Felder her? Abgefragt werden die jedenfalls nicht.
            
echo "$row->vorname
 $row->nachname
 $row->strasse
 $row->ort
 $row->plz 
"
;
        }
    }
}
?>
  Mit Zitat antworten
Alt 18.05.2005, 00:16  
Gast
 
Beiträge: n/a
Standard

$abfrage = "SELECT passwort FROM benutzer WHERE username='$username4pw'";

Deien Abfrage sollte doch so aussehen... LIKE ist nur interessant, wenn du auch platzhalzer (%) verwendest. Desweiteren solltest du die namen immer mit irgendwie 'quoten'.
  Mit Zitat antworten
Alt 18.05.2005, 15:26  
Gast
 
Beiträge: n/a
Standard

Grummel die Hummel.@VolkerK

Bin nun ma n Xtrem newbie und hab bisher weder php noch mysql programmiert. Aber dran rum merkern bringt nix. Kannst ja lieber sagen, wie das sein muss, dass es funktioniert!?!?!?!

Mfg
Lithic
  Mit Zitat antworten
Alt 18.05.2005, 18:46  
Gast
 
Beiträge: n/a
Standard

Fertigen Code hinstellen nutzt kaum etwas - Lerneffekt geht gegen 0.
Ausserdem weiss ich ja nicht, was alles benötigt wird und was nicht.
Aber egal, hier ein Versuch
PHP-Code:
<?php
$verbindung 
mysql_connect('localhost''user''passwort')
        or die (
'Datenbankverbindung konnte nicht hergestellt werden');
mysql_select_db('fagro'$verbindung)
        or die(
mysql_error()); // durch or die('Fehler bei Datenbankwahl') ersetzen, wenn das Skript fertig ist

$abfrage "SELECT passwort,username,vorname,nachname,strasse,ort,plz
        FROM benutzer
        WHERE username='"
.mysql_real_escape($_POST['username'], $verbindung)."'";
$ergebnis mysql_query($abfrage$verbindung)
        or die(
mysql_error(). ': '$abfrage); // durch or die('Fehler in Abfrage') ersetzen, wenn das Skript fertig ist

if ( $user=mysql_fetch_array($ergebnisMYSQL_ASSOC) )
{
    if ( 
$user['passwort']===$_POST['passwort'])
    {
        
// das Passwort wird nicht weiter benötigt -> entfernen
        
unset($user['passwort']);
        
// der verbleibende Datensatz beschreibt den angemeldeten Benutzer
    
}
    else
        
$user false;
}
// ab hier ist $user entweder ein Feld mit den Benutzerdaten (gültig angemeldet)
// oder false, wenn es entweder keinen Benutzer mit diesem Namen gibt oder das Passwort falsch ist.

if ( false===$user )
    die( 
'Anmeldung fehlgeschlagen' );
else
    echo 
'Hallo, 'join(':'$user);
?>
Ist einfach nur runtergetippt, ohne Fehlerlesen et al
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Nach Login mit Session Username auslesen DDogg PHP Tipps 2006 2 07.07.2006 15:42
Problem beim Auslesen von MySQL: Fehler GSJLink PHP Tipps 2006 15 02.01.2006 17:37
Fehler beim auslesen aus der Datenabnk beim Suchen PHP Tipps 2005-2 6 16.10.2005 17:04
Daten aus Pw-Geschütztem bereich auslesen PHP-Fortgeschrittene 2 26.08.2005 15:27
[Erledigt] Username ausm Proxy auslesen PHP-Fortgeschrittene 3 31.05.2005 08:39
Windows Authentifizierung und Passwort auslesen PHP-Fortgeschrittene 3 15.03.2005 16:42
UTF8-XML ... Fehler beim auslesen PHP Tipps 2005 40 15.01.2005 21:28
Fehler beim Auslesen eines Verzeichnis PHP Tipps 2007 7 04.01.2005 10:46
Fehler bei Auslesen von Ordnernamen und datein im ordner PHP-Fortgeschrittene 3 11.12.2004 13:25
Mysql Fehler beim auslesen von Datensätzen Datenbanken 4 19.10.2004 10:05
Passwort aus DB auslesen, wie geht das? PHP Tipps 2004 5 27.09.2004 21:43
Fehler beim Auslesen aus DB PHP Tipps 2004 0 24.09.2004 15:38
Username aus datei auslesen... PHP Tipps 2004 17 17.08.2004 15:00
Seiten auslesen lassen = FEHLER PHP Tipps 2004 30 02.08.2004 16:53
wo steckt der fehler bei der passwort abfrage? PHP Tipps 2004 18 22.06.2004 23:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
skype passwort auslesen, skype kennwort auslesen, skype passwort auslesen tool, skype pw auslesen, skype passwörter auslesen, passwort skype auslesen, sql user passwort auslesen, skype password auslesen, skype passwort auslesen windows, php passwort auslesen, sql datenbank passwort auslesen, http://www.php.de/datenbanken/23199-username-und-passwort-auslesen-fehler-im-scrippt.html, mysql passwort auslesen, skype passwort lesen, sql passwort auslesen, passwort auslesen skype, skype passwort, skype passwort herausfinden, skypepasswort auslesen, user passwort auslesen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.