Seite 1 von 1

Auslesen des MD5 Passworts des Frontendusers aus der DB

Verfasst: Mi 14. Dez 2005, 16:24
von risibility
Ich versuche schon seit Stunden mir das MD5 Passwort des momentan angemeldeten Frontendusers ausgeben zu lassen. Kann mir da jemand helfen?

Ich weiß zum Beispiel das man mit

Code: Alles auswählen

$auth->auth["uid"]
die UserID des momentan angemeldeten Backendusers ausgeben lassen kann. Das gleiche möchte ich mit dem MD5 machen...

Vielen Dank im voraus...

Verfasst: Mi 14. Dez 2005, 16:37
von Dodger77
Du willst aber schon den Hash (Klartext kann ja nicht funktionieren)? Den solltest du mit einer SQL-Abfrage ohne Problem rausbekommen. Schau dir mal die "con_frontendusers" an.

Verfasst: Mi 14. Dez 2005, 16:39
von HerrB
Ich denke, dass ist nicht in der Klasse enthalten. Erhältst Du nur, in dem Du mit uid-Werte eine SQL-Abfrage machst.

Gruß
HerrB

Verfasst: Mi 14. Dez 2005, 16:48
von risibility
Ich erkläre mal am besten wofür ich das brauche...

Ich benötige ien USER_ID zur Weiterleitung auf eine zweite externe Seite. Die sorgt dafür das man sich auf der externen nicht mehr einzuloggen braucht.

Das Problem ist, dass bei den Frontendusern in der DB keine USER_ID festgehalten wird. Wenn man sich also im Frontend als Frontenduser anmeldet wird bei der Übertragung der UID nir die "IDFRONTENDUSER" übermittelt und die besteht bekanntlich beim z. B. ersten User nur aus "1". Das ist mir aber zu heikel nur eine einzelne Zahl zu übermitteln und deshalb dachte ich mir, ich übermittel das MD5 Passwort...

Verfasst: Mi 14. Dez 2005, 18:40
von HerrB
Öhm, gilt trotzdem das Gesagte:
Ich denke, dass ist nicht in der Klasse enthalten. Erhältst Du nur, in dem Du mit uid-Werte eine SQL-Abfrage machst.
Den md5 zu senden, hört grundsätzlich gar nicht sooo schlecht an - wobei ich Dich darauf hinweisen möchte, dass ein md5(irgendwas) nicht eindeutig sein muss.

Gruß
HerrB

Verfasst: Do 15. Dez 2005, 09:10
von risibility
Dann mal folgende Frage:

Wenn ich mich einlogge, dann wird das Password ja gegengecheckt. Dazu muß das eingegebene Passwort in MD5 umgewandelt werden und dann mit dem in der Datenbank vorhandenen verglichen werden.
Bei diesem Vorgang ist das umgewandelte MD5-Passwort doch in einer Variablen des Login-Moduls gespeichert.

Kann ich nicht einfach diese Variable aus dem Login-Mudul ausgeben lassen?
Und wenn ja, weiß vielleicht irgend jemand welche Variable das ist?

Gruß

Verfasst: Do 15. Dez 2005, 16:08
von risibility
Hab es so gemacht...

Code: Alles auswählen

<?php
if ($auth->auth["uid"] == "nobody")
{ echo "kein zugang";
} else 
{
$Verbindung = mysql_pconnect( "localhost", "Benutzername", "Passwort")
@mysql_select_db("Datenbankname", $Verbindung)
 	
$tabellenname = "con_frontendusers";
$spaltenname = "idfrontenduser";
$userid = $auth->auth["uid"]; 

$SQLAbfrage = "SELECT password FROM $tabellenname
WHERE $spaltenname = $userid";

$Ergebnis = mysql_query($SQLAbfrage, $Verbindung)

while ( $aDaten = mysql_fetch_array( $Ergebnis ) )
{echo $aDaten["password"] ;}
?>
und es funktioniert... ;)

Verfasst: Fr 16. Dez 2005, 00:19
von HerrB
Was Du da erstellt hast, ist eine einfache DB-Abfrage (das wurde mehrfach erwähnt).

Dazu bräuchtest Du aber kein mysql_pconnect, denn es handelt sich (zumindest in dem Beispiel) um die Contenido-DB - da gibt es das Objekt DB_Contenido, siehe andere Module.

Mit anderen DBs dürfte es so nicht ganz funktionieren, da dazu nach Ausführung die DB-Verbindung wieder auf die Contenido-DB "zurückgebogen" werden muss (nur so zur Info...).

Gruß
HerrB

Verfasst: Fr 16. Dez 2005, 13:59
von risibility
Dann werd ich das mit dem DB_Contenido nochmal abändern. Vielen Dank HerrB für die vielen Mühen hier und wegen der Umlaute im anderen Tread ;)