Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сеансы
 
 автор: Boss   (03.08.2005 в 15:47)   письмо автору
 
 

Добрый день, вчера переставил пхп и наблюдал такую вещь: неработают сеансы:


<?php
  session_start
();
  
  
$HTTP_SESSION_VARS['sess_var'] = "Привет всем!";

  echo 
'Значение переменной $HTTP_SESSION_VARS[\'sess_var\'] равно '
        
.$HTTP_SESSION_VARS['sess_var'].'<br />';
?>


Ошибки%


Warning: session_start() [function.session-start]: open(/tmp\sess_09358b799c88c330aa19b78402d0261b, O_RDWR) failed: No such file or directory (2) in D:\Site\page1.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\Site\page1.php:2) in D:\Site\page1.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\Site\page1.php:2) in D:\Site\page1.php on line 2
The content of $HTTP_SESSION_VARS['sess_var'] is Hello world!
Next page 
Warning: Unknown(): open(/tmp\sess_09358b799c88c330aa19b78402d0261b, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0



В чем проблема?

   
 
 автор: Евгений Петров   (03.08.2005 в 16:18)   письмо автору
 
   для: Boss   (03.08.2005 в 15:47)
 

А это точно весь код. Там выше нигде ничего нет, ничего не инклудится?

   
 
 автор: Boss   (03.08.2005 в 16:49)   письмо автору
 
   для: Евгений Петров   (03.08.2005 в 16:18)
 

Page1.php

<?php
  session_start
();
  
  
$HTTP_SESSION_VARS['sess_var'] = "Hello world!";

  echo 
'The content of $HTTP_SESSION_VARS[\'sess_var\'] is '
        
.$HTTP_SESSION_VARS['sess_var'].'<br />';
?>
<a href="page2.php">Next page</a> 


Page2.php


<?php
  session_start
();

  echo 
'The content of $HTTP_SESSION_VARS[\'sess_var\'] is '
        
.$HTTP_SESSION_VARS['sess_var'].'<br />';

  unset(
$HTTP_SESSION_VARS['sess_var']);
?>
<a href="page3.php">Next page</a>


Page3.php


<?php
   session_start
();
  echo 
'The content of $HTTP_SESSION_VARS[\'sess_var\'] is '
        
.$HTTP_SESSION_VARS['sess_var'].'<br />';
  
session_destroy();
?> 


Все больше ничего нет...

   
 
 автор: isset   (03.08.2005 в 17:08)   письмо автору
 
   для: Boss   (03.08.2005 в 16:49)
 

перед

session_start(); 


поставить:

session_save_path('c:/'); 

   
 
 автор: Boss   (03.08.2005 в 17:44)   письмо автору
 
   для: isset   (03.08.2005 в 17:08)
 

Ага робит. А разве он не по стандарту должен save?

   
 
 автор: Гость   (03.08.2005 в 16:19)   письмо автору
 
   для: Boss   (03.08.2005 в 15:47)
 

Дал неверное решение - убрал :)

   
 
 автор: Boss   (03.08.2005 в 19:17)   письмо автору
 
   для: Boss   (03.08.2005 в 15:47)
 

Можно ли в настройках пхп поставить автоматически путь сохранения сеансов:?

   
 
 автор: isset   (03.08.2005 в 19:23)   письмо автору
 
   для: Boss   (03.08.2005 в 19:17)
 

see php.ini

   
 
 автор: cheops   (03.08.2005 в 19:32)   письмо автору
 
   для: Boss   (03.08.2005 в 19:17)
 

Что означает "автоматический путь"?

   
 
 автор: Евгений Петров   (03.08.2005 в 21:34)   письмо автору
 
   для: cheops   (03.08.2005 в 19:32)
 

Помоему это значит, чтобы он автоматически выставлял параметр sessio_save_path(), правда по умолчанию он и так автоматически ставится.
Тут два варианта:
1) файлы сессии удаляются из этой директории раньше времени.
2) такой директории не существует.
Проверь следующим кодом перед session_start()

echo session_save_path();

Что выдаст?

   
 
 автор: Gelmir   (26.08.2005 в 23:17)   письмо автору
 
   для: Евгений Петров   (03.08.2005 в 21:34)
 

Здравствуйте, установил ПХП (комплект быстрой установки App Server) и также столкнулся с ошибками сессий. При выполнении вышеуказанного кода выдаётся:

Page1.php

The content of $HTTP_SESSION_VARS['sess_var'] is Hello world!
Next page

Page2.php

Notice: Undefined index: sess_var in c:\appserv\www\og\sessions\page2.php on line 6
The content of $HTTP_SESSION_VARS['sess_var'] is
Next page

Page3.php

Notice: Undefined index: sess_var in c:\appserv\www\og\sessions\page3.php on line 5
The content of $HTTP_SESSION_VARS['sess_var'] is

помогите пожалуйста!
PHP.ini прикладывается

   
 
 автор: cheops   (27.08.2005 в 00:05)   письмо автору
 
   для: Gelmir   (26.08.2005 в 23:17)
 

notice - это не ошибка, а своеобразный совет и выводится, когда выставлена максимальная чувствительность PHP к ошибкам - её следует понизить, как это сделано на всех хостингах, иначе они не дадут работать. Для этого, следует выставить соответствующее значение для директивы error_reporting http://www.softtime.ru/info/articlephp.php?id_article=23, в конфигурационном файле php.ini
error_reporting = E_ALL & ~E_NOTICE

Так же можно изменить уровень обработки ошибок локально, для этого в начало скрипта следует поместить функцию
<?php 
Error_Reporting
(E_ALL & ~E_NOTICE); 
?>

В качестве параметра, которой передать соответствующий уровень обработки ошибок.

   
 
 автор: Gelmir   (27.08.2005 в 00:11)   письмо автору
 
   для: cheops   (27.08.2005 в 00:05)
 

проблемма не в появление нотисов (я специально включил вывод всех ошибок), а в том, что пропадает значение сессии.
Применив тестер (http://softtime.ru/forum/read.php?id_forum=1&id_theme=1516&page=3) получил:
Переменной login Нет в супер-глобальном массиве!
обратитесь к документации по настройке php на вашем сервере.

К сожалению какой либо документации не имеется, поэтому и написал свою просьбу на форум

   
 
 автор: Gelmir   (27.08.2005 в 01:18)   письмо автору
 
   для: cheops   (27.08.2005 в 00:05)
 

попробовал следующий код:

<? 
  session_start
(); 
  
$name "maksim"
  
$_SESSION['my_name'] = $name
?> 
<a href="page2.php">На следующую страницу </a> 


page2.php

<? 
  session_start
(); 
  echo 
"Привет, ".$_SESSION['my_name']; 
?> 

в итоге получаю Привет,

   
 
 автор: gotbar   (27.08.2005 в 05:03)   письмо автору
 
   для: Gelmir   (27.08.2005 в 01:18)
 

А как установлены флаги на сессионные куки
и на передачу сессий через урлы php.ini?

Должно стоять

session.use_cookies=on
и (или)
session.use_trans_sid=on

   
 
 автор: Gelmir   (27.08.2005 в 18:44)   письмо автору
 
   для: gotbar   (27.08.2005 в 05:03)
 


session.use_cookies=1
session.use_trans_sid=0

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

   
 
 автор: gotbar   (27.08.2005 в 20:37)   письмо автору
 
   для: Gelmir   (27.08.2005 в 18:44)
 

Возможно, что куки в вашем браузере отключены, а пхп сконфигурирован у вас таким образом, что сессия сохраняется только в куках. Об этом говорит строчка session.use_cookie=1.

Или нужно включить куки в браузере хотя бы на стандартное положение, или , если не хотите их включать, установите

session.use_trans_sid =on (или 1)

   
 
 автор: Gelmir   (27.08.2005 в 20:43)   письмо автору
 
   для: gotbar   (27.08.2005 в 20:37)
 

попробую сделать так, как вы советуете, однако хочу заметить что ошибка сохранялась при минимальном ровне безопасности, установленном в ИЕ.
Спасибо.

   
 
 автор: gotbar   (27.08.2005 в 21:12)   письмо автору
 
   для: Gelmir   (27.08.2005 в 20:43)
 

У меня в браузере ваши скрипты выводят: "Привет, maksym". Так, что все работает (у меня :) )

   
 
 автор: Gelmir   (27.08.2005 в 23:45)   письмо автору
 
   для: gotbar   (27.08.2005 в 21:12)
 

после установки в РНР.ini session.use_trans_sid=on всё отлично работает! спасибо огромное!

   
 
 автор: cheops   (27.08.2005 в 21:11)   письмо автору
 
   для: Gelmir   (27.08.2005 в 18:44)
 

Да кстати, действительно распространённая проблема при
session.use_cookies=1

когда в браузере отключены cookie.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования