I have the following statement:
$stmt = $con->prepare("UPDATE accounts SET loggedin = ? WHERE TIMESTAMPDIFF(SECOND,lastcheck, NOW()) >= ? AND loggedin = ?");
$stmt->bind_param('iii', 0, 61, 0);
And it gives 500 internal server error
. When I tried the same on phpmyadmin running the sql thing like this:
UPDATE accounts SET loggedin = 0 WHERE TIMESTAMPDIFF(SECOND,lastcheck, NOW()) >= 61 AND loggedin = 1
Worked without any problems.
Where is my problem?
Here's my error:
PHP Fatal error: Uncaught Error: Cannot pass parameter 2 by reference
bind_param
doesn't take values, it only takes parameters. You need to use variables. Something like:
$stmt->bind_param('iii', $s, $ss, $sss);
$s = 0;
$ss= 61;
$sss = 0;
should resolve it.