PHP deaktiviert HTML code

Es steht doch in beitrag #12 ich habe den bei mir übernommen da geht es also wenn ich mich regestrire dann ist das passwort verschlüsselt. Aber wenn ich mich einlogen möchte sagt er mir immer "Wrong Username or Password" wo bei die passwort stimmen habe sicht mal probiert. Und bei Beitrag #20 stehen die code von einlogen der die daten abfragt von msql.
 
Ja, beim Einloggen bzw. Überprüfen der Daten, musst du das Passwort erneut verschlüsseln, damit du die die Passwörter "auf gleicher Ebene" (=verschlüsselt) vergleichen kannst.

Entferne einfach diese Zeilen:
PHP:
$mypassword = stripslashes($mypassword);
$mypassword = mysql_real_escape_string($mypassword);
(da das Passwort auch Sonderzeichen enthalten könnte, die aber verschlüsselt keine Rollte mehr spielen!)

Und füge diese an der gleichen Stelle hinzu:
PHP:
$mypassword = md5(sha1($mypassword));
 
Grüße,

also du musst dir das einfach mal so vorstellen:
Wenn du dich registrierst, dann wird das Passwort erst verschlüsselt und dann in die DB geschrieben, wo es dann auch verschlüsselt vorliegt.
Wenn du dich jetzt anmelden/einloggen möchtest und in deinem Anmelde-Skript die Verschlüsselung fehlt, dann passiert folgendes:
Die Daten vom Anmelde-Skript (unverschlüsselt) werden mit den Daten aus der DB (verschlüsselt) verglichen.

Um das jetzt mal zu verdeutlichen: test ist ungleich bc3209vf5786749674cf4
Damit das nicht passiert müssen deine Anmelde-Daten auch verschlüsselt an die Abfrage übergeben werden.

PHP:
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$mypassword = md5(sha1($mypassword));
 
Vielen dank es hat geklappt cool net schlcht ich frage mich wann werde ich so was können lol. Ich bin frohe ich habe den forum gefunden wo ich auch fragen kann.


so habe ich jetzt meine code damit ist die abfrage erfolgreich gewesen. Ich bedanke mich an euch beiden.

PHP:
$myusername = stripslashes($myusername);
$mypassword = md5(sha1($mypassword));  
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

Jetzt würde ich gerne mal wissien wie kann ich ip mit session verbinden. was muss ich tuhn ?
 
Zuletzt bearbeitet:
Hallo umar420,

hier findest du ein schönes Beispiel wie du an die IP-Adresse kommst: http://forum.de.selfhtml.org/archiv/2004/3/t74154/

Wenn du diesen Wert ermittelt hast, dann kannst du ihn in einer SESSION-Variablen zur weiteren Verwendung speichern.

PHP:
//diesen Befehl einfügen, sofern er nicht schon vorhanden ist
session_start();
$_SESSION["ip"] = $_SERVER['REMOTE_ADDR'];

Gruß Thomas
 
@Alex_T:

Eigentlich braucht man kein mysql_real_escape_string auf das verschlüsselte Passwort anwenden.


@umar420:

Es könnte auch sein, dass der Inhalt von $_SEVER['REMOTE_ADDR'] nicht die wirkliche IP ist, sondern vielleicht die eines Proxys.
Die IP kannst du aber nicht immer bekommen, da sie immer irgendwie versteckt werden kann.

Aber du kannst den Code, der im SelfHTML-Forum gepostet wurde, nehmen.
 
Wie kann ich so einstellen oder auf was muss ich achten wenn ich angemeldet bin das es die login kästchen ausblenden und dort steht von den user die name und auslogen?
 
Zuletzt bearbeitet:
Nach 3-maligem lesen habe ich es geschafft deine Frage zu verstehen. Mit Satzzeichen wäre es um einiges leichter.

Schau dir mal dieses Tutorials an: PHP Tutorial

Auf dauer wird das zusammen kopieren von Code dich nicht glücklich machen, deswegen schau dir das Tutorial an.

Zu deiner Frage:
Du musst mit if-Abfragen prüfen ob die Session gestartet ist und die Werte überpürfen. In einer if-Abfrage kannst du dann je nachdem entweder den Login anzeigen oder eben dein Name und Logout!
Schau dir dazu am besten den Abschnitt Loginskript im Tutorials an, von oben an!

Gruß
 
Zuletzt bearbeitet:
@ComFreek:
mh das stimmt, wird ja sowieso unkenntlich gemacht...
Das war wieder so nach dem Motto: vorhandenen Code nehmen und ergänzen ohne nachzudenken :D
 
Zurück