Я обыскал сайт и увидел исправления для проблемы, в которой пользователь должен был помещать одинарные кавычки вокруг переменной, но я все еще немного смущен.
Ошибки: (все ссылаются на строку 28) Примечание: использование неопределенной константы log_id – предполагается «log_id» Примечание: использование неопределенной константы log_username – предполагается «log_username» Примечание: использование неопределенной константы log_password – предполагается «log_password»
Автор сценария:
<?php session_start(); include ("includes/connection.php"); $user_ok = false; $log_id = ""; $log_username = ""; $log_password =""; function evalLoggedUser($con,$id,$u,$p){ $sql = "SELECT ip FROM users WHERE id='$id' AND username='$u' AND password='$p' AND activated='1' LIMIT 1"; $query = mysqli_query($con, $sql); $numrows = mysqli_num_rows($query); if($numrows > 0){ return true; } } if(isset($_SESSION["userid"]) && isset($_SESSION["username"]) && isset($_SESSION["password"])) { $log_id = preg_replace('#[^0-9]#', '',$_SESSION['userid']); $log_username = preg_replace('#[^a-z0-9]#i','', $_SESSION ['username']); $log_password = preg_replace('#[^a-z0-9]#i','', $_SESSION ['password']); //VERIFY USER $user_ok = evalLoggedUser($con,log_id,log_username,log_password); } else if(isset($_COOKIE["id"]) && isset($_COOKIE["user"]) && isset($_COOKIE["pass"])) { $_SESSION['userid'] = preg_replace('#[^0-9]#', '',$_COOKIE['userid']); $_SESSION ['username'] =preg_replace('#[^a-z0-9]#i','', $_COOKIE ['username']); $_SESSION['password'] = preg_replace('#[^a-z0-9]#i','', $_COOKIE ['username']); //CREATE LOCAL SHORT VARIABLES $log_id = $_SESSION['userid']; $log_username = $_SESSION['username']; $log_password = $_SESSION['password']; if($user_ok == true){} //UPDATE LAST LOGIN TIME $sql = "UPDATE users SET lastlogin=now() WHERE id='$log_id' LIMIT 1"; $query = mysqli_query($con,$sql); } ?>
Измените эту строку, вы забыли $ infront переменных:
$user_ok = evalLoggedUser($con,$log_id,$log_username,$log_password);
Ты забыл поставить знаки доллара.
Замените это:
$user_ok = evalLoggedUser($con,log_id,log_username,log_password);
с этим:
$user_ok = evalLoggedUser($con,$log_id,$log_username,$log_password);
$user_ok = evalLoggedUser($con,log_id,log_username,log_password);
изменить на:
$user_ok = evalLoggedUser($con,$log_id,$log_username,$log_password);