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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проблема с авторизацией. 
:(
    Опции темы
mr.fox
Дата 7.6.2005, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2




Короче, у меня первая стадия отупения. Второй день не могу найти ошибку в системе авторизации.. Короче вот ее упрощенный протатип.
----------
Сама форма собственно.:
Код
<form action="login1.php" method="post">
Login &nbsp;<input type="text" name="nick"><br>
Pass&nbsp; <input type="password" name="password"><br>
<input type="submit">
</form>

----------
файл login1.php ::
Код
<?
session_start();
$nick=$_POST['nick'];
$password=$_POST['password'];
function db_connect()
{
   $result = mysql_pconnect('localhost', 'root', '555890'); 
   if (!$result)
      return false;
   if (!mysql_select_db('game'))
      return false;

   return $result;
}
function login($nick, $password)
// check username and password with db
// if yes, return true
// else return false
{
  // connect to db
  $conn = db_connect();
  if (!$conn)
    return false;

  // check if username is unique
  $result = mysql_query("select * from users 
                         where nick=$nick
                        and password = old_password($password)");
  if (!$result)
     return false;
  
  if (mysql_num_rows($result)>0)
     return true;
  else 
     return false;
}

?>
<html>......
<?
if($nick && $password)
    {
        if(login($nick,$password))
            {
                $_SESSION['valid_user']=$nick;
                echo ' You are signed in as '.$_SESSION['valid_user'];
            }
        else
            {
                echo 'You can not be signed in';
            }
        }
else echo 'You didn\'t fill out the forms';
?>


вот код, почему постоянно выводит что не могу авторизировать.. Имена полей сверял 200 раз.. не пойму. короче хелп.

Это сообщение отредактировал(а) mr.fox - 7.6.2005, 18:23
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 7.6.2005, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


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

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



Цитата(mr @ 7.6.2005, 19:20)
old_password($password)

А это что?
В догонку: http://forum.vingrad.ru/index.php?act=modu...el&article=2849

PM ICQ   Вверх
mr.fox
Дата 7.6.2005, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



я читал там.. old_password это у меня бд с пхп так контачат.. если ставлю просто password() то ошибка лезет.
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 7.6.2005, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


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

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



Цитата(mr @ 7.6.2005, 19:33)
я читал там.. old_password это у меня бд с пхп так контачат..

Если ты про:
Цитата
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client

ТО:
Цитата
This is permanent solution. Instead of typing this "SET PASSWORD FOR peter@localhost = OLD_PASSWORD('something');" in the command line client for every single user, do the following:


Find "my.ini" inside windows directory and insert the following lines (First line is just a comment, it can be ommited)

#Use old password encryption method (needed for 4.0 and older clients).
old_passwords

Restart the service for the changes to take place.

А не в коде программы !!!
PM ICQ   Вверх
mr.fox
Дата 7.6.2005, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



вопрос не в этом, и оба способа дают одинаковый результат.
А вопрос по поводу ошибка в моем коде еще открыт.
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 7.6.2005, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


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

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



Что значит не в этом, когда ты сравниваешь пароль со стррокой "old_password(пароль)".. Тут никогда равно не будет.

PM ICQ   Вверх
mr.fox
Дата 7.6.2005, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



причем здесь это, я не сравниваю со строкой, old_password('$password') выдает хэш пароля и они сравниваются
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 7.6.2005, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


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

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



Цитата(mr @ 7.6.2005, 19:20)
and password = old_password($password)"

Это называется сравнить со строкой.
PM ICQ   Вверх
Irokez
Дата 7.6.2005, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


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

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



что за функция old_password в мускуле?? может кавычки забыли вокруг $password?
PM   Вверх
mr.fox
Дата 7.6.2005, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



ковычки я уже поставил, всеравно не авторизирует
MAL, а вот если поставить md5('$password') или sha1('$password') то тоже будет сравнение со строкой?

Это сообщение отредактировал(а) mr.fox - 7.6.2005, 20:36
PM MAIL WWW ICQ   Вверх
Guest
Дата 8.6.2005, 09:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата
and password = old_password($password)"

А тут не "==" должно быть?..
  Вверх
Opik
Дата 8.6.2005, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

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



Цитата
А тут не "==" должно быть?..

нет
PM MAIL Skype   Вверх
mr.fox
Дата 8.6.2005, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



ну и чо делать?
PM MAIL WWW ICQ   Вверх
Ищущий!
Дата 12.6.2005, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А мож сессию сначала запустить надо?
PM MAIL   Вверх
mr.fox
Дата 14.6.2005, 03:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: -1
Всего: 2



сессия запускается в самой первой строчке, код читаем
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




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


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

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