PHP passwort vor Seite - Code - was ist was ?

  • hallo hab folgenden Code irgendwann mal gefunden


    funktioniert / läuft super :)


    bin aber Anfänger und verstehe einige Zeilen nicht ganz bzw. weiß nicht was sie machen :S

    was das "get_magic_quotes_gpc" an der Stelle macht versteh ich nicht xD


    $_POST = array_map( $_POST ) und


    if (

    $passwort == trim( $_POST['passwort'] )


    auch nicht ?(


    sollte die Dinge einfach mal googlen

    aber frag mich ob man da nicht Zeilen von löschen kann :/

  • was das "get_magic_quotes_gpc" an der Stelle macht versteh ich nicht xD

    get_magic_quotes_gpc() liefert false da es die Einstellung deren Wert sie liefert schon ewig nicht mehr gibt - das deutet auch darauf hin dass das Script nicht mehr ganz das frischeste ist … Grundsätzlich ist das aber ein klarer Fall von RTFM, wir sind nicht dazu da dir das Handbuch vorzulesen.

    $_POST = array_map( $_POST ) und

    Die Zeile macht überhaupt nichts außer eine Warnung auszuspucken - da fehlt nämlich ein Parameter. Da um die Zeil herum ein »if(false)« steht, ist das vermutlich nur nie aufgefallen - der ganze if-Block kann ersatzlos entfernt werden.

    if (

    $passwort == trim( $_POST['passwort'] )

    Die Zeile sorgt dafür dass man keine Passwörter verwenden kann die am Anfang oder Ende ein Leerzeichen stehen haben (der Sinn solcher Passwörter sei einfach mal dahin gestellt). Aber auch hier hilft ein Blick ins Handbuch zu verstehen was trim() macht. Btw: Passwörter sollten niemals im Klartext gespeichert werden, verwende password_hash() bzw. password_verify().


  • besser ? :/ kommen noch n paar echos rein für falsches passwort :saint:^^ funktioniert genau wie das alte :love:

    grad primär html bzw css (flexbox) am schreiben bzw. lernen aber immerhin versteh ich jetzt die einzelnen Zeilen in diesem code xD

  • immerhin versteh ich jetzt die einzelnen Zeilen in diesem code

    Was bei den paar Zeilen ja auch nicht besonders schwierig ist.


    Und bitte die Formatierungsmöglichkeiten des Forums nutzen, denn so ist es besser lesbar:

  • if (

    $passwort == ( $_POST['passwort'] ))


    {

    Nein. Ok, der Code zerstört jetzt keine Daten mehr aber die Klammern um $_POST sind überflüssig und v.a. hast du meinen letzten Satz in #2 nicht beachtet: Passwörter niemals im Klartext speichern (Ausnahme sind natürlich die Passwörter für Datenbankverbindungen o.ä.).


    Aber wozu überhaupt das Passwort? Der Benutzer kann doch die about.html auch gleich direkt aufrufen …

  • dachte der php code wird nicht angezeigt bzw. nur serverseitig abgehandelt ^^

    Das stimmt schon - aber kannst du garantieren dass in deinen Scripten keinerlei Sicherheitslücken sind und der Server so sicher ist dass da garantiert nie jemand Zugriff darauf bekommen kann? Oder dass die Scripte mit dem Passwort darin garantiert nie in falsche Hände gelangen? Nein, kannst du nicht, deswegen immer nur den Hash des Passworts speichern, damit kann niemand was anfangen und zum Einloggen braucht es das Passwort nicht im Klartext.