I had a difficult time solving this bug, and finally solved it. I'm posting it here to help others who might be struggling with the same situation.
Code Source:
This code is from the Simple PHP Login System, Lesson 17 & 18.
My Setup:
Machine: Windows 10
WAMP
PHP version: 7.4.9
Code Editor: VS Code
Here is my error notice:
Notice: Only variables should be passed by reference in C:\wamp64\www\phplogin-parts17-18-projectfiles\register.php on line 144
I got that error message when I tried to register a member.
The problem lies in LINE 144
SOLUTION:
You need to create a new variable that represents...
md5($input['pass'] . $config['salt'])
Let's call that variable $salty....
$salty = md5($input['pass'] . $config['salt']);
...and then insert that new variable $salty into ... $stmt->bind_param(x, x, x, x, $salty);
The code should look like this:
if ($stmt = $mysqli->prepare("INSERT members (username, email, type, password) VALUES (?,?,?,?)"))
{
$salty = md5($input['pass'] . $config['salt']);
$stmt->bind_param("ssss", $input['user'], $input['email'], $input['type'], $salty);
$stmt->execute();
$stmt->close();
Hope that helps!
Stephen