For some reason I can not get my function to return a string...
$password = crypt_password_input($password, \"\");
//Encrypt Password longer than 8 characters
f
I am not sure about your logic, but your code should be like this:
$password = crypt_password_input($password, "");
//Encrypt Password longer than 8 characters
function crypt_password_input($inputPassword, $newPassword)
{
$passwordLength = strlen($inputPassword);
if($passwordLength > 8)
{
$encryptString = substr($inputPassword, 0, 8);
$inputPassword = substr($inputPassword, 8);
$newPassword .= crypt($encryptString, "HIDDENSALT");
return crypt_password_input($inputPassword, $newPassword);
}
else
{
$newPassword .= crypt($inputPassword, "HIDDENSALT");
echo "Final: " . $newPassword . "
";
return $newPassword;
}
}
echo "Encrypted from the input: " . $password . "
";
In your code, you are recursively calling the input but not returning anything, so it fails if you have password longer than 8 characters.