1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Mo: 30 Juni 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Entwicklung & Scripting
    4. Webentwicklung
    5. HTML, CSS, PHP, JS

    PHP Loginsystem Fehler - Passwort Hash PASSWORD_DEFAULT | MySQL Injection

    • Brandy Scotchland
    • 1. Juni 2019 um 10:35
    • Geschlossen
    • Brandy Scotchland
      Schüler
      Reaktionen
      70
      Trophäen
      10
      Beiträge
      91
      Bilder
      11
      • 1. Juni 2019 um 10:35
      • #1

      Hi liebe NN-Community,

      Ich habe grade ein kleines Problem.

      Und zwar schreibe ich grade ein Loginsystem mit PHP soweit funktioniert auch alles bis auf das Login, da hat er Probleme mit dem Passwort Hash.

      Registrieren kann man sich.

      Hier mal beide datein. Vielleicht findet ihr den Fehler.

      register.inc.php

      PHP
      <?php
      if(isset($_POST['signup-submit'])){
          require 'dbh.inc.php';
      
          $username = $_POST['name'];
          $email = $_POST['email'];
          $pw = $_POST['pw1'];
          $pw2 = $_POST['pw2'];
      
          if(!filter_var($email, FILTER_VALIDATE_EMAIL) && !preg_match("/^[a-zA-Z0-9]*$/", $username)) {
                  header("Location: ../register.php?error=invalidmailname");
                  exit();
          }    else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
                  header("Location: ../register.php?error=invalidmail&name=".$username);
                  exit();
          }    else if(!preg_match("/^[a-zA-Z0-9]*$/", $username)) {
                  header("Location: ../register.php?error=invalidname&mail=".$email);
                  exit();
          } else if($pw == $pw2){
                  header("Location: ../register.php?error=passwordcheckname=".$username."&mail=".$email);
                  exit();
          } else {
      
                  $sql = "SELECT uidUsers FROM users WHERE uidUsers=?";
                  $stmt = mysqli_stmt_init($conn);
                  if (!mysqli_stmt_prepare($stmt, $sql)) {
                      header("Location: ../register.php?error=sqlerror");
                      exit();
      
              } else {
                      mysqli_stmt_bind_param($stmt, "s", $username);
                      mysqli_stmt_execute($stmt);
                      mysqli_stmt_store_result($stmt);
                      $resultCheck = mysqli_stmt_num_rows($stmt);
      
                      if ($resultCheck > 0) {
                          header("Location: ../register.php?error=usertaken&mail=".$email);
                          exit();
                      } else {
      
                              $sql = "INSERT INTO users (uidUsers, emailUsers, pwdUsers) VALUES (?, ?, ?)";
                              $stmt = mysqli_stmt_init($conn);
                              if (!mysqli_stmt_prepare($stmt, $sql)) {
                                  header("Location: ../register.php?error=sqlerror");
                                  exit();
      
                          } else {
      
                              $hashed = password_hash($pw, PASSWORD_DEFAULT);
      
                              mysqli_stmt_bind_param($stmt, "sss", $username, $email, $hashed);
                              mysqli_stmt_execute($stmt);
                              header("Location: ../register.php?register=success");
                              exit();
                          }
      
                      }
              }
      
          }
      
          mysqli_stmt_close($stmt);
          mysqli_close($conn);
      
      } else {
          header("Location: ../register.php");
          exit();
      }
      ?>
      Alles anzeigen

      login.inc.php

      Hier sagt er immer egal was ich eingebe Passwort ist falsch!

      PHP
      <?php
      
      if (isset($_POST['login-submit'])) {
      
        require 'dbh.inc.php';
      
        $mailuid = $_POST['email'];
        $password = $_POST['pw'];
      
      
          $sql = "SELECT * FROM users WHERE uidUsers=? OR emailUsers=?;";
          $stmt = mysqli_stmt_init($conn);
          if (!mysqli_stmt_prepare($stmt, $sql)) {
            header("Location: ../index.php?error=sqlerror");
            exit();
          } else {
            mysqli_stmt_bind_param($stmt, "ss", $mailuid, $mailuid);
            mysqli_stmt_execute($stmt);
            $result = mysqli_stmt_get_result($stmt);
            if ($row = mysqli_fetch_assoc($result)) {
              $pwdCheck = password_verify($password, $row['pwdUsers']);
              if ($pwdCheck == false) {
                header("Location: ../index.php?error=wrongpwd");
                exit();
              } else if ($pwdCheck == true) {
                session_start();
                header("Location: ../index.php?login=seccest");
                exit();
              }
            }
          }
      
      
      } else {
        header("Location: ../index.php");
        exit();
      }
      
      ?>
      Alles anzeigen

      Einmal editiert, zuletzt von Brandy Scotchland (1. Juni 2019 um 11:12)

    • Brandy Scotchland
      Schüler
      Reaktionen
      70
      Trophäen
      10
      Beiträge
      91
      Bilder
      11
      • 1. Juni 2019 um 11:14
      • #2

      Hier noch mal als Datei. Da man das blaue echt schlecht lesen kann :)

      Dateien

      LoginSystem.rar 1,24 kB – 231 Downloads
    • Lukassrs
      Frischling
      Reaktionen
      1
      Trophäen
      7
      Beiträge
      13
      • 1. Juni 2019 um 11:35
      • #3

      So in etwa hab ich das immer gelöst. $passwd ist das was eingegeben wird. Ich hoffe es hilft dir.

      PHP
      <?php
      $passwd = "testpassword";
      $hash  = password_hash($passwd, PASSWORD_DEFAULT);
      
      if (password_verify('testpassword', $hash)) {
          echo 'Stimmt!';
      } else {
          echo 'Stimmt nicht.';
      }
      ?>
    • Brandy Scotchland
      Schüler
      Reaktionen
      70
      Trophäen
      10
      Beiträge
      91
      Bilder
      11
      • 1. Juni 2019 um 11:43
      • #4

      Alles klar ich guck mal danke.

    • Brandy Scotchland
      Schüler
      Reaktionen
      70
      Trophäen
      10
      Beiträge
      91
      Bilder
      11
      • 1. Juni 2019 um 11:54
      • #5

      Ja ich glaube der hat irgendwie probleme das Passwort aus der Datenbank zu nehmen!

    • Brandy Scotchland
      Schüler
      Reaktionen
      70
      Trophäen
      10
      Beiträge
      91
      Bilder
      11
      • 1. Juni 2019 um 13:03
      • #6

      Jo beitrag kann geschlossen werden.

      Fehler ist:

      im Form frage ich das pw mit pw1 ab aber in der register mit pw. Somit habe ich ein passwort was aus der leertaste besteht.

    • nox 11. Mai 2025 um 17:52

      Hat das Thema aus dem Forum PHP nach HTML, CSS, PHP, JS verschoben.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™