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
Форумы портала PHP.SU » » Если скрипт не работает » Не работает $_SESSION

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

1. ppman - 25 Августа, 2011 - 11:21:53 - перейти к сообщению
Есть такой код
PHP:
скопировать код в буфер обмена
  1. <?
  2. $_SESSION['stage'] = 1;
  3. echo $_SESSION['stage'];
  4. require_once("mysql.php");
  5. $questions=mysql_query("SELECT * FROM questions ORDER BY n1,n2,n3,n4");
  6. $mzapr = mysql_query("SELECT MAX(n1) FROM questions");
  7. $mstr = mysql_fetch_array($mzapr);     
  8. $max = $mstr['MAX(n1)'];
  9. echo $max;
  10. ?>
  11. <style type="text/css">
  12.    TABLE {
  13.     border-collapse: collapse; /* Убираем двойные линии между ячейками */
  14.    }
  15.    TD {
  16.     padding: 3px; /* Поля вокруг содержимого таблицы */
  17.     border: 1px solid black; /* Параметры рамки */
  18.    }
  19.  </style>
  20.  <?
  21. echo "<H1>Анкета-опрос.</H1> <br><br> Просим заполнить вас следующую анкету-опрос.<br><br>";
  22. echo "<FORM ACTION=\"http://".$_SERVER['HTTP_HOST']."/1.php\" METHOD=POST>
  23.                 Наименование организации: <input type=text size=60  name=organization><br />            <input name=current type=hidden value=1>
  24.                 <input type=submit value=Далее>
  25.                 </form>";
  26.  
  27. ?>
  28.  


На следующей странице пытаемся вызвать переменную:

PHP:
скопировать код в буфер обмена
  1. <?
  2. if (@$_SESSION['stage']) {echo "1";} else echo "0";
  3. echo $_SESSION['stage'];
  4. require_once("mysql.php");
  5. if((@$_POST['organization']) and ($_SESSION['stage']==1))
  6. {
  7. $organization = $_POST['organization'];
  8. $date = date ("Y-m-d");
  9. $Zapros = "INSERT INTO users VALUES('','$organization', '$date')" or die (mysql_error());
  10. mysql_query($Zapros) or die (mysql_error());
  11. $_SESSION['insert_id'] = mysql_insert_id();
  12. $_SESSION['stage'] = 2;
  13. echo $_SESSION['insert_id'];
  14. } else die("Вы не на той странице опроса!");
  15. ?>

Здесь нам показывается что переменной $_SESSION['stage'] не существует. Причем был аналогичный код немного в другом виде, но вроде все работало.
session_register тоже не помогает.
Что я делаю не так? Почему переменная не сохраняется?
2. Мелкий - 25 Августа, 2011 - 11:25:49 - перейти к сообщению
ppman пишет:
session_start;

А где скобки, указывающие, что это - функция? Без них считается константой, при том, неопределённой и вызывается E_NOTICE, которые у вас, видимо, выключены.
3. ppman - 25 Августа, 2011 - 11:27:51 - перейти к сообщению
Большое спасибо, всё верно.

 

Powered by ExBB FM 1.0 RC1