1
我已经设置了我的注册并登录了它们在服务器上的php文件,它适用于我的swift应用程序。我可以轻松登录并注册。但是当我添加password_hash()
方法来保护用户密码时,当我尝试注册时,它会在Xcode上出现错误。有没有其他方法可以安全地存储密码,如果这不起作用了。是的,我的PHP安装34年5月5日:通过Xcode的PHP和Swift:password_hash()的致命错误
错误:
DATA: <br />
<b>Fatal error</b>: Call to undefined function password_hash() in <b>/*/*/public_html/*/signup.php</b> on line <b>92</b><br />
signup.php
// Hash password and insert new user to table
$hashPassword = password_hash($password, PASSWORD_DEFAULT);
$command = " INSERT INTO USER
(firstname, lastname, username, email, password)
VALUES
('$firstname', '$lastname', '$username', '$email', '$hashPassword')";
if (mysqli_query($DB, $command)) {
// Search for newUser
$command = "SELECT * FROM USER WHERE username = '$username'";
$sql = mysqli_query($DB, $command);
if (mysqli_num_rows($sql) != 0) {
$newUser = mysqli_fetch_array($sql);
$returnData["status"] = "200";
$returnData["message"] = "Success!";
$returnData["ID"] = $newUser["ID"];
$returnData["firstname"] = $newUser["firstname"];
$returnData["lastname"] = $newUser["lastname"];
$returnData["username"] = $newUser["username"];
$returnData["email"] = $newUser["email"];
}
echo json_encode($returnData);
return;
} else {
$returnData["status"] = "400";
$returnData["message"] = "Sorry, something must've went wrong. Please try again...";
echo json_encode($returnData);
return;
}
signin.php
// Find user from table and sign in
$command = "SELECT * FROM USER WHERE email = '$email'";
$sql = mysqli_fetch_array(mysqli_query($DB, $command));
if (isset($sql)) {
$hashPassword = $sql["password"];
if (password_verify($password, $hashPassword)) {
$returnData["status"] = "200";
$returnData["message"] = "Success!";
$returnData["ID"] = $sql["ID"];
$returnData["username"] = $sql["username"];
}
echo json_encode($returnData);
return;
} else {
$returnData["status"] = "400";
$returnData["message"] = "Sorry, something must've went wrong. Please try again...";
echo json_encode($returnData);
return;
}
我也试过,它根本不起作用。 –