Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: админка для сайта [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): « 1 [2] 3 »   

> Описание: ошибка при авторизации
Саныч Модератор
Отправлено: 10 Июля, 2011 - 23:12:36
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




evik пишет:
да,если можно
строки нету в коде... Это я очепятался, когда редактировал ваш код, удалил случайно строку...

Вобщем evik, запомните на будущее. Всегда первой строкой в файле ставить error_reporting(E_ALL); Намного проще будет с исправлением ошибок...
Только после отладки error_reporting(E_ALL); заменить на error_reporting(0); либо вобще удалить


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:13:49
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




$a=$b||$c;
$a=$b or $c;
тут точно есть разница а вот с сравнением неуверен
можете тесты проделать
 
 Top
Саныч Модератор
Отправлено: 10 Июля, 2011 - 23:16:13
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




LIME, сори, я не заметил скобок в вашем примере... Улыбка
Но все-равно выражение if ($_POST['log'] != ($arr['log'] || $_POST['pas'] )!= $arr['pas']) неправильное...
Надеюсь автор сейчас поставит error_reporting(E_ALL); в свой файл и мы точно узнаем кто из нас прав Улыбка


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:19:56
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Санычhttp://php.su/learnphp/operators/?prior
(Добавление)
упс сори там or итд не оказалось
гдето еще надо поискать
(Добавление)
как раз в таких случаях можно ставить лишние скобки для уверености
а после отладки можно и проверить
 
 Top
evik
Отправлено: 10 Июля, 2011 - 23:26:05
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2011  


Помог: 0 раз(а)




вставил строку в код,появилось такое:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in Z:\home\localhost\www\fl\start.php on line 13
В доступе отказано!

Я совсем чайник,поэтому много путаюсь Улыбка

(Отредактировано автором: 10 Июля, 2011 - 23:27:19)

 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:28:31
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




сразу после $res=mysql_query($query); надо вставить
...короче давайте код что там получилось у вас
 
 Top
Саныч Модератор
Отправлено: 10 Июля, 2011 - 23:29:30
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




ошибка в запросе SELECT log,pas FROM user WHERE user=1
Проверяйте имена на соответствие с тем, что у вас в базе... Особенно обратите внимание на user=1 Я это написал чисто как пример, надеясь на то, что вы все подправите под себя...
(Добавление)
LIME, автор уже вставил... mysql_fetch_assoc() expects para...


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:30:54
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Саныч пишет:
ошибка в запросе SELECT log,pas FROM user WHERE user=1

или $res еще не определен может быть?
 
 Top
evik
Отправлено: 10 Июля, 2011 - 23:31:20
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2011  


Помог: 0 раз(а)




LIME пишет:
сразу после $res=mysql_query($query); надо вставить
...короче давайте код что там получилось у вас

PHP:
скопировать код в буфер обмена
  1. <?
  2.    error_reporting(E_ALL);
  3.    $hostname = 'localhost';
  4.     $username = 'alex';
  5.     $password = '12345';
  6.     $dbName = 'mydb';
  7.     $db=mysql_connect($hostname, $username, $password) or die ('Не могу создать соединение');
  8.       mysql_select_db($dbName,$db) or die (mysql_error());
  9.    
  10.       $query='SELECT log,pas FROM user WHERE user=1';
  11.  
  12.       $res=mysql_query($query);
  13.       $arr=mysql_fetch_assoc($res);
  14.       if ($_POST['log'] != $arr['log'] || $_POST['pas'] != $arr['pas']) echo 'В доступе отказано!';
  15.  
  16.       else {
  17.  
  18.          session_start();
  19.  
  20.          $_SESSION['a']='123';
  21.  
  22.          include('head.php');
  23.  
  24.          include('bottom.php');
  25.  
  26.       }
  27.           ?>


Отредактировано модератором: Саныч, 10 Июля, 2011 - 23:32:42
Обрамляйте код соответствующими тегами!
 
 Top
Саныч Модератор
Отправлено: 10 Июля, 2011 - 23:33:51
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




Ну все ясно... Проверяйте запрос, либо дайте структуру вашей таблицы в БД
LIME пишет:
или $res еще не определен может быть?

Нет, $res определен, просто вместо массива mysql_fetch_ вернул false...
evik, в таких случаях делают еще провеку по mysql_num_rows()


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
evik
Отправлено: 10 Июля, 2011 - 23:36:36
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2011  


Помог: 0 раз(а)




Саныч пишет:
Ну все ясно... Проверяйте запрос, либо дайте структуру вашей таблицы в БД


в базе таблица user,в таблице поля log и pas
 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:37:57
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Ха-ха а ведь можно было догадаться))
(Добавление)
$query='SELECT log,pas FROM user'
 
 Top
Саныч Модератор
Отправлено: 10 Июля, 2011 - 23:38:48
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




evik пишет:
поля log и pas
и все?! Не понял Я так понимаю, это у вас таблица пользователей... id есть?
(Добавление)
LIME пишет:
а ведь можно было догадаться))
Можно, но это слишком просто для моего (я думаю и для вашего) мозга, что он о таком даже и не подумал... Улыбка


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
evik
Отправлено: 10 Июля, 2011 - 23:40:25
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2011  


Помог: 0 раз(а)




Саныч пишет:
evik пишет:
поля log и pas
и все?! Не понял Я так понимаю, это у вас таблица пользователей... id есть?

там логин и пароль администратора,id нет
 
 Top
LIME
Отправлено: 10 Июля, 2011 - 23:43:02
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




evik да нормально ...вставте запрос что я дал выше работать будет
просто нельзя будет определить кто из админов зашел
 
 Top
Страниц (3): « 1 [2] 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Если скрипт не работает »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB