严格的标准:只有变量应该通过第14行的参考传递[重复]

This question already has an answer here:

I am getting the error Strict standards: Only variables should be passed by reference on line 14

<?php
require 'database.php';
$messaqage = '';

if(!empty($_POST['email']) && !empty($_POST['password'])):

    // Enter the new user in the database
    $sql = "INSERT INTO users (email, password) VALUES (:email, :password)";
    $stmt = $conn->prepare($sql);

    $stmt->bindParam(':email',$_POST['email']);
    $stmt->bindParam(':password',password_hash($_POST['password'],PASSWORD_BCRYPT));

    if( $stmt->execute() ):
        $message = 'Successfully created new user';
    else:
        $message = 'Sorry there must be an issue creating your account';
    endif;

endif;

?>

I am stuck in resolving this error. I am not able to debug the issue.

Thanks in advance

</div>

bindParam() second argument is a reference. You pass a function result. change like this .

$password = password_hash($_POST['password'],PASSWORD_BCRYPT); 
$stmt->bindParam(':password',$password);