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
Форумы портала PHP.SU :: Версия для печати :: session_start и header
Форумы портала PHP.SU » » Вопросы новичков » session_start и header

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

1. tonya - 17 Ноября, 2015 - 15:56:49 - перейти к сообщению
Добрый день! Только начинаю учить php, поэтому вопрос возможно немного глупый=)

Есть код, в самом начале проверяю не запущена ли сессия. Если нет, то запускаю ее. Дальше пишу header('Location:index.php?id=6');, т.е. перенаправляю на нужную страницу. Если я header закомментрирую, то все отлично работает. Но когда его оставляю, меня сразу отправляет на страницу index.php?id=6.

Подскажите, что не так=)

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. if(!isset($_SESSION)) session_start();
  3. header('Location:index.php?id=6');
  4. $_SESSION['name']=$_POST['user'];
  5. ?>
  6. <div>Pour connecter votre profil йcrivez vos login et mot de passe</div>
  7. <form class='connect' action='index.php?id=4' method='post'>
  8.         <fieldset>
  9.          <label>Login:</label>
  10.         <input type='text' name ='user'/></br>
  11.         <label>Mot de passe:</label>
  12.         <input type='text' name ='password'/></br>
  13.    <input type='hidden' name='id' value='6'/>
  14.         <input type='submit' id='connect' value="Se connecter"/>
  15.  
  16.         </fieldset>
  17.         </form>
2. SAD - 17 Ноября, 2015 - 16:06:02 - перейти к сообщению
tonya пишет:
Дальше пишу header('Location:index.php?id=6');, т.е. перенаправляю на нужную страницу


tonya пишет:
Но когда его оставляю, меня сразу отправляет на страницу index.php?id=6.


я тогда не понимаю, в чем проблема, если не смотреть на Ваш код.

если уже смотреть, то, вероятно, Вам следует поменять местами строчки

PHP:
скопировать код в буфер обмена
  1. if(!isset($_SESSION)) session_start();
  2. $_SESSION['name']=$_POST['user'];
  3. header('Location:index.php?id=6');
3. Sail - 17 Ноября, 2015 - 16:10:24 - перейти к сообщению
И, вероятно, фигурных скобочек поставить...
4. tonya - 17 Ноября, 2015 - 16:11:53 - перейти к сообщению
Возможно, я не достаточно четко описала проблему.

Я захожу на страничку, заполняю форму (ввожу Login: и Mot de passe) далее нажимаю кнопку и только сейчас я должна попасть на страницу index.php?id=6.

Если я сниму комментарий на header, то я форму не заполняю, а сразу попадаю на страницу index.php?id=6
(Добавление)
Попробовала сделать, как вы сказали. Ничего не изменилось
5. andrewkard - 17 Ноября, 2015 - 18:22:08 - перейти к сообщению
tonya
PHP:
скопировать код в буфер обмена
  1.  if (isset($_POST['user'])){
  2. $_SESSION['name']=$_POST['user'];
  3. header('Location:index.php?id=6');
  4. }
  5.  
  6.  
6. tonya - 19 Ноября, 2015 - 17:34:35 - перейти к сообщению
Спасибо! Все получилось!

 

Powered by ExBB FM 1.0 RC1