Я работаю над проектами из книги «PHP и MySQL Web Development 4th Edition» и получаю сообщение об ошибке при загрузке файлов главы 28 с помощью прилагаемого компакт-диска.
Глава посвящена созданию инструмента «Корзина» с использованием книг, хранящихся в базе данных MySQL. Файлы на компакт-диске содержат завершенный проект, поэтому я импортировал файлы SQL и внедрил базу данных MySQL, чтобы я мог следить за проектом. Однако у меня возникают проблемы с доступом к интерфейсу администрирования. Файл «login.php» — это страница, на которой администратор может войти в систему и добавлять, редактировать или удалять книги из списка доступных книг, чтобы добавить их в свою корзину. Тем не менее, я получаю некоторые ошибки при открытии файла «login.php» в моем браузере. Он выглядит так же, как скриншот в учебнике, за исключением того, что вверху экрана я получаю:
Notice: Undefined variable: _SESSION in C:\xampp\htdocs\phpmysql4e\Chapter28\output_fns.php on line 7
Notice: Undefined index: total_price in C:\xampp\htdocs\phpmysql4e\Chapter28\output_fns.php on line 10
С кодом не может быть никаких ошибок, так как это код, который был в файлах CD-ROM.
Строки 6-12 файла output_fns.php выглядят так:
// declare the session variables we want access to inside the function
if (!$_SESSION['items']) {
$_SESSION['items'] = '0';
}
if (!$_SESSION['total_price']) {
$_SESSION['total_price'] = '0.00';
}
Теперь ошибки исчезают, если я добавлю
session_start ();
в верхней части страницы, но это не может быть правильно. Конечно, редактирование кода не требуется, поскольку это файлы, содержащиеся на компакт-диске.
Даже когда я редактирую код, чтобы избавиться от ошибок, у меня также возникают проблемы при входе в интерфейс.
В этой главе отображаются скриншоты каждой страницы корзины покупок после входа администратора. За исключением случаев, когда я не могу успешно войти в систему, я не вижу эти скриншоты в своем браузере. После импорта файлов SQL в созданной базе данных есть таблица «admin». В «admin» есть столбец имени пользователя и пароля, с одним уже зарегистрированным администратором по умолчанию («admin» в качестве имени пользователя и длинный случайный пароль в качестве пароля). Когда я ввожу эту информацию в «login.php», она не работает. Когда я редактирую таблицу «admin» для добавления нового пользователя-администратора, она все равно не работает. Я не должен правильно подключаться к своей базе данных, верно? На страницах определенно отображается информация из моей базы данных, но по какой-то причине браузеру не удается связаться с БД, когда я пытаюсь войти в систему как администратор.
Кажется, не должно быть ошибок с кодировкой, так как я просто использую файлы, поставляемые с CD-ROM. Должна быть какая-то простая ошибка, которую я полностью пропускаю … верно?
Спасибо за чтение и любая помощь с благодарностью. Пожалуйста, дайте мне знать, если нужна дополнительная информация.
попробуйте это:
if (!isset($_SESSION['items'])) {
$_SESSION['items'] = '0';
}
if (!isset($_SESSION['total_price'])) {
$_SESSION['total_price'] = '0.00';
}
Имя пользователя и пароль для этого проекта
«Админы».
Я смог понять это только догадываясь; Я не вижу этой информации нигде в учебнике.
Если я использую метод «isset», который вы предоставили, ребята, эти 2 ошибки действительно исчезают со страницы «login.php», однако при вводе пароля мне не удается войти в систему. Всякий раз, когда я посещаю ссылку, я получаю сообщение об ошибке, в котором говорится, что я не вошел в систему как администратор и не авторизован для просмотра содержимого.
Однако, когда я игнорирую 2 ошибки в «login.php» и просто ввожу имя пользователя и пароль, я могу успешно войти в систему, добавить, удалить и изменить корзину покупок.
Я в замешательстве, но рад, что добился определенного прогресса в этом деле. Большое спасибо всем, кто помог. Моя задача сейчас — выяснить, как избавиться от этих ошибок в верхней части страницы, а также иметь возможность успешно войти в систему как администратор.