У меня есть ссылка для проверки, как это:
http://nailsalon.gwiddle.co.uk/nailsalon/[email protected]&hash=66808e327dc79d135ba18e051673d906
,
Когда я нажимаю на нее или вставляю вручную в адресную строку, я получаю error 500
или же File not found
, Страница, к которой я пытаюсь получить доступ по этой ссылке, использует $_GET
массив.
Когда я использую ссылку, как это:
http://nailsalon.gwiddle.co.uk/nailsalon/index.php?id=1
что приводит к странице, которая не использует $_GET
загружается без проблем.
Есть еще один вопрос с той же проблемой, но здесь нет решения:
Внутренняя ошибка сервера при подтверждении электронной почты
Вот код целевой страницы:
if(isset($_GET['email']) && !empty($_GET['email']) AND isset($_GET['hash']) && !empty($_GET['hash'])){
$email = clear_entry($_GET['email']);
$hash = clear_entry($_GET['hash']);
/*Query that retrieves all users with the given email and hash*/
$result = $mysqli->query("SELECT * FROM users WHERE user_email='$email' AND hash='$hash' AND is_activated='0'");
/*Checks if the account is already verified*/
if ($result->num_rows == 0 ){
$_SESSION['message'] = "Account has already been activated or the URL is invalid!";
header("location: error.php");
}else{
$_SESSION['message'] = "Your account has been successfully activated!";
$mysqli->query("UPDATE users SET is_activated='1' WHERE user_email='$email'") or die($mysqli->error);
$_SESSION['active'] = 1;
header("location: success.php");
}
}else{
$_SESSION['message'] = "Invalid parameters provided for account verification!";
echo "Invalid parameters provided for account verification!";
header("location: error.php");
}
?>
Задача ещё не решена.
Других решений пока нет …