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 :: Почему может не работать функция логина?)

 PHP.SU

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


 Страниц (1): [1]   

> Без описания
crosstep
Отправлено: 21 Апреля, 2011 - 20:27:52
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1. <?
  2.                     if (!isset($_SESSION['user_id']))  {  
  3.                         if (!isset($_POST['submit'])){  ?>
  4.                             <form action="index.php" method="post">
  5.                                                         <h4>Вход на сайт </h4>          
  6.                                                         Имя:<br>
  7.                                  
  8.                                                         <input type="text" name="name" size="15" maxlength="30" value="" /><br>
  9.                                  
  10.                                                         Пароль:<br>
  11.                                    
  12.                                                         <input type="password" name="pass" size="15" maxlength="35" value="" /><br>
  13.                                      
  14.                                                         <input type="submit" value="Войти" />
  15.                                                
  16.                                                         </form>
  17.                                                
  18.                             <a href="reg.php">Регистрация.</a><br>
  19.                              
  20.     <?                }              
  21.            
  22.          
  23.                        
  24.  
  25.                         else {
  26.                         require_once("db.php");
  27.                         mysql_connect($dbhost,$dbuser,$dbpass);
  28.                         mysql_select_db($dbase);
  29.                    
  30.      
  31.                         $query = "SELECT * FROM `accs` WHERE `name`='".$_POST['name']."' AND `pass` = '".$_POST['pass']."' LIMIT 0,1";
  32.                         $f = mysql_query($query);
  33.                         $row = mysql_fetch_assoc($f); // сюда
  34.                         mysql_close();
  35.                         $_SESSION['user_id'] =   $row['0'];
  36.                         if(!$f) die("Неверное имя или пароль");
  37.                         }}
  38.                     else{
  39. // отсюда
  40.                        echo 'Вы вошли как '.$row['1'];
  41.                     }
  42.                    
  43.                                  
  44.                            
  45.                       ?>    

(Отредактировано автором: 21 Апреля, 2011 - 21:31:46)

 
 Top
OrmaJever Модератор
Отправлено: 21 Апреля, 2011 - 20:32:24
Post Id



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


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


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




crosstep пишет:
PHP:
скопировать код в буфер обмена
  1.                         $f = mysql_query($query);
  2.                         mysql_close();
  3.                         $_SESSION['user_id'] =   $row['0'];
  4.                         if(!$f) die("Неверное имя или пароль");
  5.                         }}
  6.                     else{
  7.                        $row = mysql_fetch_assoc($f);
  8.                        echo 'Вы вошли как '.$row['1'];
  9.                     }

Вначале в сесии записывается некая еременая $row['0'], и только затем она устанавливается

(Отредактировано автором: 21 Апреля, 2011 - 20:32:42)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
LifePlay
Отправлено: 21 Апреля, 2011 - 20:40:02
Post Id



Частый гость


Покинул форум
Сообщений всего: 135
Дата рег-ции: Авг. 2010  
Откуда: Кобеляки, Украина


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




Не понял


34 строчка: Где масив $row взялся?
38 строчка: Тут соединения с боз нет. и плюс к всему $f тоже нет.
 
 Top
crosstep
Отправлено: 21 Апреля, 2011 - 21:32:24
Post Id


Новичок


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


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




исправил) все равно что то не то
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB