Здравствуйте. У меня возникла проблема, я решил сделать вход по вк. Но у меня возникла проблема.
Если не сложно можете помочь?Ошибка:
Код (Text):
Fatal error: Uncaught Error: Class ‘Mysql’ not found in W:\domains\localhost\init.php:41 Stack trace: #0 W:\domains\localhost\index.php(1): require() #1 {main} thrown in W:\domains\localhost\init.php on line 41Код:
PHP:
<?php /* Подключение библиотек */ require_once ‘simplevk-master/autoload.php’; require_once ‘vendor/autoload.php’; /* Константы для работы с БД */ const SERVER = ‘localhost’; const USERNAME = ‘root’; const PASSWORD = »; const DATABASE_NAME = ‘Studio’; const CHARSET = ‘utf8mb4’; if ( $_SESSION[‘user_id’] ) // Проверяем, есть в массиве $_SESSION айди юзера { $row = $db->query( «SELECT * FROM users WHERE `vk_id` = ?i LIMIT 1», $_SESSION[‘user_id’] )->fetchAssoc(); // Вытаскиваем из БД инфу о юзере $login = $row[‘first_name’] . ‘ ‘ . $row[‘last_name’]; // Конкотенируем имя и фамилию пользователя для удобства, записываем результат в переменную $login } else { $login = »; // Если пользователь не авторизован, то логин будет равен пустой строке } /* Массив с данными о нашем приложении в ВК */ ‘client_id’ => ‘Секрет’, // ID приложения ‘client_secret’ => ‘Секрет’, // Защищённый ключ ‘redirect_uri’ => ‘http://localhost/’ // Страница, на которую нас перебросит после авторизации ); $db = Mysql::create( SERVER, USERNAME, PASSWORD )->setDatabaseName( DATABASE_NAME )->setCharset( CHARSET ); // Подключение к БД $auth = new \DigitalStar\vk_api\SiteAuth( SETTINGS ); // Создаём экземпляр класса SiteAuthГде ошибка:
PHP:
$db = Mysql::create( SERVER, USERNAME, PASSWORD )->setDatabaseName( DATABASE_NAME )->setCharset( CHARSET ); // Подключение к БД $auth = new \DigitalStar\vk_api\SiteAuth( SETTINGS ); // Создаём экземпляр класса SiteAuth
Ну если класс не найден, это значит ты не указал где он. ))) Там где у тебя коментарий «Подключение библиотек» я подозреваю должны автолоадеры классов работать. Аж две штуки. Но что-то там не так. ТАМ. А не в том фрагменте, который ты показал.
Уже исправил, но появилась новая проблема…
Код (Text):
Fatal error: Uncaught Error: Call to undefined function mysql_query() in W:\domains\localhost\login.php:49 Stack trace: #0 {main} thrown in W:\domains\localhost\login.php on line 49PHP:
<!DOCTYPE html> <html lang=»en»> <head> <meta charset=»utf-8″> <?php require_once(«includes/connection.php»); ?> <?php include(«includes/header.php»); ?> <?php include(«includes/footer.php»); ?> <title> Как с помощью PHP и MySQL создать систему регистрации и авторизации пользователей</title> <link href=»css/style.css» media=»screen» rel=»stylesheet»> <link href=»http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800″ rel=»stylesheet» type=»text/css»> </head> <body> <div class=»container mlogin»> <div id=»login»> <h1>Вход</h1> <form action=»» id=»loginform» method=»post»name=»loginform»> <p><label for=»user_login»>Имя пользователя<br> <input class=»input» id=»username» name=»username»size=»20″ type=»text» value=»»></label></p> <p><label for=»user_pass»>Пароль<br> <input class=»input» id=»password» name=»password»size=»20″ type=»password» value=»»></label></p> <p class=»submit»><input class=»button» name=»login»type= «submit» value=»Войти»></p> <p class=»regtext»>Еще не зарегистрированы?<a href= «register.php»>Регистрация</a>!</p> </form> </div> </div> <footer> </footer> <?php ?> <?php require_once(«includes/connection.php»); ?> <?php include(«includes/header.php»); ?> <?php // вывод «Session is set»; // в целях проверки } $query =mysql_query(«SELECT * FROM usertbl WHEREusername=»».$username.«» AND password='».$password.«‘»); if($numrows!=0) { { $dbusername=$row[‘username’]; $dbpassword=$row[‘password’]; } if($username == $dbusername && $password == $dbpassword) { // старое место расположения // session_start(); $_SESSION[‘session_username’]=$username; /* Перенаправление браузера */ } } else { // $message = «Invalid username or password!»; echo «Invalid username or password!»; } } else { $message = «All fields are required!»; } } ?> </body> </html>Строка ошибки:
PHP:
$query =mysql_query(«SELECT * FROM usertbl WHEREusername=»».$username.«» AND password='».$password.«‘»);
новая проблема — новая тема. давай так.
— Добавлено —
Функции mysql_* давно мертвы. Есть очень похожий набор mysqli_* и есть не очень похожий PDO. Попробуй заменить.https://www.php.net/manual/ru/function.mysql-query.php
Пробовал, выдает ошибки, показать?
я не буду смотреть. )) есть ощущение, что ты сам не хочешь разбираться. в доке все написано как правильно делать
В каких доках?
я ссылку дал. php.net — это официальный сайт. там документация.
А, не увидел
— Добавлено —Если честно, ничего не понял…
Похожие записи:
- C ++ 20: я — матрица, вещание, np.dot () и np.matmul ()
- Оценка покерных рук (оптимизация скорости)
- Более быстрый алгоритм AAN для вычисления дискретного косинусного преобразования
- Программа расчета небоскребов для размера NxN, версия 3 (с использованием битовых масок)
- Ошибка синтаксического анализа: синтаксическая ошибка, неожиданное «required» (T_CONSTANT_ENCAPSED_S