hallo
weer een topic denk je dat klopt nu geen css/html maar php(blowfish)

ik heb me registeerder omgebouwt naar blowfish dat werkt
maar nu bij inloggen pakt die elke wachtwoord en dat moet niet he
 
login.php
<?php
require_once("config.php");
session_start();
 if (!empty(trim($_POST['username'])) && !empty(trim($_POST['password'])))
    {
    	$username = ($_POST['username']);
        $password = ($_POST['password']);
        $ha_pass = password_verify ($password , CRYPT_BLOWFISH);
 
        $sql = $mysqli->query("SELECT * from user WHERE username = '{$username}' LIMIT 1");       
        if (!$sql->num_rows == 1) {
                echo "<p>foutte gebruikersnaam/wachtwoord </p>";
        } else {
                echo "<p>Logged in successfully</p>";
                  session_regenerate_id(true);
                  $_SESSION['user'] = "test";
               
        }
	}else{
	?>
	   <form action="login.php" method="POST">
                Gebruikersnaam:<br />              
                <input type="text" placeholder="gebruikersnaam" name="username" /> <br />
                    Wachtwoord:<br />
                     
                    <input type="password" name="password" placeholder="wachtwoord" />
                     
                    <input type="submit"id="login" value="login">
                    
                    <?php if(isset($_SESSION['user']) == true){
                     echo  $_SESSION['user'];
                    }else{echo "login ";
                    }?>
             
            </form>
			<?php
			
	}
?>


registeer.php

<?php
require_once("config.php"); 
if(isset($_POST['hidden']) && $_POST['hidden'] ==1){

$username = $_POST['username'];
 $password = $_POST['password'];
 $password2 = $_POST['password2'];

if ($password == $password2){
 $sql1 = $mysqli->query("SELECT username from user WHERE username='".$username."'");
if($sql1->num_rows == 1){
echo"bestaat al";
 }else{
         $sql3 = $mysqli->query( "INSERT INTO user (`username`, `password`) VALUES ('".$username."','".password_hash($password, CRYPT_BLOWFISH)."')");
 }

}else{
	echo "passworden komen niet overeen";
}
}
?>
<html>
<head><title>registeer</title></head>
<body>

<form action='registeer.php' method='post'>
username:<input type='text'name='username'/> <br />
password: <input type='password'name='password' /> <br />
password retype: <input type='password'name='password2' /> <br />
<input type='hidden' name='hidden' value=1>
<input type='submit' value='registeer'>
</form>

</body>
</html>


dit is wat ik er begrijp $hash =CRYPT_BLOWFISH ;
if(password_verify($password, $hash)) {
Nee, je moet het anders doen.

<?php
// en nu goed LEZEN wat in de variabele staat...
if (password_verify($passwordFromPost, $hashedPasswordFromDB)) 
{
   //true
}
else 
{
   // false
}
?>

En om het je nog duidelijker te maken hier een opzetje hoe het werkt:

<?php

$options = [
			'cost' => 10
		   ];
		// Get the password from post
		$passwordFromPost = 'test';

		$hash = password_hash($passwordFromPost, PASSWORD_BCRYPT, $options);
		
		echo $hash;
		echo '<br />';
		
		// Get the password from the database and compare it to a variable (for example post)
		//$passwordFromPost = $_POST['password'];
		$hashedPasswordFromDB = '$2y$10$es6QnePL938piPYTlboNEeh7ZL8O3WpT6LPbFa7o7Gc8ex5WL9vei';

		if (password_verify($passwordFromPost, $hashedPasswordFromDB)) 
		{

    		echo 'Password is valid!';
    		echo '<pre>';
    		
    		echo '<hr>';
    		var_dump(password_get_info($hash));

			//  CHECK TO SEE PASSWORD NEED REHASH

			if (password_needs_rehash($hashedPasswordFromDB, PASSWORD_BCRYPT, $options)) 
			{

            	$hashNew = password_hash($passwordFromPost, PASSWORD_BCRYPT, $options);
				echo '<br>';
            	echo $hashNew;

        	}

		} 
		else 
		{

    		echo 'Invalid password.';
    	}
?>
-_-

Stop maar met PHP, het antwoord is hier alleen al 5x gegeven ofzo.

Ik begrijp trouwens niet wat die {$var} dingen daar doen.....
wat kan ik er aan doen dat ik een noob bent wat meer makkelijker uitleg moet
Kenny even ontopic, snap je mijn voorbeeld?
Heb je het bekeken/geprobeerd?
ja echt vaak en een paar geprobeerd ik loop alleen steeds vast met de db
Op welke manier loop je vast? Kan je wat specifieker zijn?
de hash nakijken
zal vast aan mijn ligggen
Zoals je ziet heb je nooit een zelfde hash. Dat is ook de bedoeling.
Maar volgens mij heb je mijn tweede voorbeeld niet gebruikt anders had je gezie dat het wel werkt.

Reageren