Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не происходит авторизация sqldb 
:(
    Опции темы
nullpoint
Дата 12.5.2014, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 4.6.2013

Репутация: нет
Всего: нет



Всем привет. Есть веб-интерфейс для создания аудио-конференций. Проблема заключается в том, что не могу залогиниться в админку. Создаю базу данных, создаю таблицы, заношу в таблицу user пользователя-админа. Все как в Readme написано. При попвтке авторизации просто обновляется страница.

 Вызывает сомнение вот эта строчка из lib/sqldb.php:
Код

$query = "SELECT id, admin FROM user WHERE email=? AND password=?";

Собственно вместо знаков вопроса должны стоять какие-то переменные как я понимаю. Или значения переменных, но тогда теряется смысл авторизации, т.к. авторизован сможет быть только один пользователь с указанными здесь данными. Помогите разобраться, пожалуйста, в php и mysql я полный ноль.

Сам веб-интерфейс пришлось загрузить на отдельный хостинг, т.к. тут прикрепить нет возможности.
Web-MeetMe
PM MAIL   Вверх
Aliance
Дата 13.5.2014, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 3
Всего: 137



Со знаками вопроса все окей, это placeholder`ы для подстановки как раз таки переменных данных. Думается мне, что заносить данные в таблицу (а именно так я и понял ваши действия) - это не гуд, т.к. скорее всего пароль в бд хранится в хешированном виде. То есть должна быть, видимо, система регистрации. В любом случае, это все гадание, т.к. никакой конкретики вы не предоставили (по ссылке левой, естественно, никто переходить не станет и качать ничего тоже).
PM MAIL WWW ICQ Skype   Вверх
nullpoint
Дата 13.5.2014, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 4.6.2013

Репутация: нет
Всего: нет



Aliance, конечно же я заношу в базу не сам пароль, а его md5-хэш.
Вот функция, котрая собственно делает выборку из базы.
Код

<?php

function authsql ($user, $password)
{

    global $db;

    $xuser = strtolower($user);
    $password = md5($password);
    $data = array( $xuser, $password);
    $query = "SELECT id, admin FROM user WHERE email=? AND password=?";
    $result = $db->query($query, $data);
    if($result->numRows())
    {
        $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
        $_SESSION['privilege'] = $row['admin'];
            return $row['id'];
    }
    else
    {
            return false;
    }
}
?>


Если закомментировать строчку
Код

$result = $db->query($query, $data);

и написать
Код

return 20;

где 20 - это id полльзователя, то авторизация успешно проходит.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.3314 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.