Скачал проект соцсети с гитхаба, но не получается подключиться к БД
Захотелось мне создать свою соцсеть. Я установил локальный хост MAMP, нашел на гите какие то исходники, подходящие мне: https://github.com/iPynch/Simple-PHP-Social-Network-Website Закинул в htdocs, вроде как ура, открылось окошко с регистрацией. Пробую зарегистрироваться - ничего не происходит. Залогинится - аналогично. Путем метода гуглотыка нашел что можно вручную создать запись в базе данных с моим аккаунтом. Создал, пытаюсь залогинится с этими данными, опять ничего не происходит. Что я делаю не так? Подскажите пожалуйста, как вообще я должен дебажить это? Где лог, где консоль выполнения программы? Где это смотреть? Я бы рад предоставить больше информации, но я даже не понимаю где ее искать. p.s Создание нового аккаунта тоже не работает. Подозреваю, нету связи с базой данных. Но все возвращается к прежнему: где я могу отдебажить это?
Я работаю на данный момент через EmEditor, без установки специализированных многогиговых сред разработки.
Проект последний раз обновлялся 7 лет назад... Учитывая вопросы, вы учерены, что стоит начинать изучать вэб разработку сразу с готового проекта 7 летней давности? Возможно вам стоит почитаь про PHP для начала, а уже потом переходить к большому проекту
Я имею довольно неплохой опыт разработки на java и в принципе синтаксис и основы php мне тоже известны. Но на начальном уровне, буквально простейшие страницы делал и просто в блокноте, не связываясь с базами данных, специализированными средами и сложными сценариями.
Я сейчас все таки установил среду phpstorm для хотя бы какого то дебага и попробовал запустить проект там. Собственно, мои предположения подтвердились, что что то не так со связью сайта и БД. Хотя может быть так и будет, учитывая что я запускаю из среды разработки, которую я точно не привязывал к базе данных никак.
Ну а этот проект выглядит довольно простым с точки зрения взять и переделать его под свои нужды. Но для начала я пытаюсь его заставить работать...
Итак, мне есть что добавить. Конечно, потыкавшись туда-сюда, я все таки пришел к решению что надо начинать с основ. Подробно изучив основы PHP я приступил к делу. Первым делом мне надо было написать классы для регистрации. Короче, грубо говоря, спустя несколько часов тыканий и гугления я пришел к следующему.
- Создал базу данных в phpMyAdmin
- Создал базовые классы для регистрации и авторизации
- Создал класс, который по идее должен создавать запросы в БД при регистрации\авторизации. И тут меня поджидала ошибка PDO - could not find driver
Прикрепляю код:
`<?php
// Настройки подключения к базе данных
$host = 'localhost';
$db = 'retrogramdb';
$user = 'myname';
$pass = 'mypass';
// DSN (Data Source Name) для подключения к базе данных
$dsn = "mysql:host=$host;port=3306;dbname=$db;charset=utf8mb4";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
try {
// Создание подключения к базе данных
$pdo = new PDO($dsn, $user, $pass, $options);
echo "Подключение к базе данных успешно установлено.";
} catch (PDOException $e) {
// Обработка ошибок подключения
die("Ошибка подключения к базе данных: " . $e->getMessage());
}
`
К слову, тестовое подключение среды разработки к базе данных прошло без запинки. А вот сам config.php, по какой то причине выдает ошибку. Уже чего только не перепробовал: проверять что включен pdo в php.ini, что пароли, порты совпадают, отключал брендмауэр, настраивал конфигурацию запуска. Ничего не помогает. При попытке подключится получаю все эту ошибку. Уже и не знаю что дальше делать (
p.s отвечу на некоторые комментарии: я из тех людей кто видит что то страшное, большое и меня просто пугает разбираться в этом. Поэтому я не стал дальше пробовать через плагины, движки пытаться создать то что мне надо. Исключительно с нуля.
Ответы (1 шт):
$host = 'localhost'; - сюда нечего вставлять не надо!
$db = 'retrogramdb'; - вставь имя базы данных
$user = 'myname'; - вставь имя пользователя базы данных
$pass = 'mypass'; - вставь пароль имя пользователя базы данных
Надеюсь помог!
И еще! Возможно, надо установить более старую версию MySQL или PHP