Ошибка в моем коде, не могу ее найти. Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный '}' в C:\xampp2\htdocs\checkout\server.php на линии 66
Parse error: syntax error, unexpected '}' in C:\xampp2\htdocs\checkout\server.php on line 66
это часть кода
// log user in fromlog in page if(isset($_POST['login'])){ $uname = mysql_real_escape_string($_POST['uname']); $password = mysql_real_escape_string($_POST['password']); //ensure all fields filled if (empty($uname)){ array_push($errors, "Username is required"); } if (empty($password)){ array_push($errors, "Password is required"); } if (count($errors) == 0){ $query = "SELECT * FROM users WHERE uname='$uname' AND password='$password'"; $result = mysqli_query($db, $query); if (mysqli_num_rows($result) == 1) { //log user in $_SESSION['username'] = $username; $_SESSION['success'] = "You are now loggedin"; header('location: login.php'); }else { //this is line 66 array_push($errors, " wrongusername/passwordcombination"); } }
Что я уже пробовал:
пристально вглядываясь.
перезапуск компа. снова перекодировка. кажется, ничего не работает. я знаю, что это небольшая ошибка, но я не могу ее найти
Richard Deeming
В дополнение к уязвимости SQL-инъекции вы сохраняете пароли в виде обычного текста. НИКОГДА сделай это!
Безопасная Аутентификация Паролем Объясняется Просто[^]
Соленое хэширование паролей - делаем это правильно[^]
PHP уже включает в себя функции, которые помогут вам сделать все правильно:
PHP: password_hash[^]
РНР: функцию password_verify[^]
Richard Deeming
И мы никак не можем ответить на ваш вопрос. Вы не сказали нам, какая строка является строкой 66, и нам нужно было бы увидеть весь предыдущий код, чтобы сосчитать открывающие и закрывающие фигурные скобки.
Основываясь на примере кода, который вы опубликовали, вы на самом деле потерянный закрывающая фигурная скобка.
wamui
//вот полный код
<?php
session_start();
$команда uname = "";
$аська = "";
$болтовня = "";
$errors = массив();
//подключение к базе данных
$db = mysqli_connect('localhost', 'root', 'registration');
//если нажата кнопка регистрация
if(isset($_POST['register'])){
$команде uname = использования mysql_real_escape_string($_POST, где['команде uname']);
$аська = использования mysql_real_escape_string($_POST, где['аськи']);
$джаббер = использования mysql_real_escape_string($_POST, где['бла']);
password_1 $ = использования mysql_real_escape_string($_POST, где['password_1']);
$password_2 = mysql_real_escape_string($_POST['password_2']);
//убедитесь, что поля формы заполнены правильно
if(empty($uname)){
array_push($errors, "требуется имя пользователя");
}
if(empty($jabber)){
array_push($errors, "требуется Jabber");
}
если(пусто($password_1)){
array_push($errors, "требуется пароль");
}
если (password_1$! = $password_2){
array_push($errors, " два пароля не совпадают");
}
//если ошибки нет, сохраните пользователя в базе данных
if (count($errors) == 0){
$sql = "вставить в пользователей (uname, icq, jabber, пароль)
Ценности ('$команде uname', '$аська', '$вздор', '$пароль)";
mysqli_query($db, $sql);
$_SESSION['uname'] = $uname;
$_SESSION['success'] = "теперь вы вошли в систему";
заголовок('location: autoshop.html'); //перенаправление на домашнюю страницу
}
}
// вход пользователя в систему fromlog in page
if(isset($_POST['login'])){
$команде uname = использования mysql_real_escape_string($_POST, где['команде uname']);
$password = mysql_real_escape_string($_POST['password']);
//убедитесь, что все поля заполнены
if (empty($uname)){
array_push($errors, "требуется имя пользователя");
}
if (empty($password)){
array_push($errors, "требуется пароль");
}
if (count($errors) == 0){
$запрос = "выбрать * из пользователей, где команде uname='$команде uname' и пароль='$пароль";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) == 1) {
//войти в систему пользователя
$_SESSION['username'] = $username;
$_SESSION['success'] = "теперь вы вошли в систему";
заголовок('location: login.php');
}else { // это строка 66
array_push($errors, " неправильная комбинация имени пользователя и пароля");
}
}
}
//выход из системы
if(isset($_GET['logout'])){
session_destroy();
unset($_SESSION['username']);
заголовок('location: login.php');
}
?>