Forum Webscript.Ru

Программирование => PHP => Тема начата: sublimity от 27 Августа 2005, 15:55:40

Название: Session (PHP5)или я заболел:)
Отправлено: sublimity от 27 Августа 2005, 15:55:40
Вчера перешел на PHP5 , все нормально переписал куски кода под него .....
Но вдруг вылетел баг ......

Попытаюсь в кратце суть:
Есть каласс , в нем происходит вызов метода , и я
туда добавил (ради эксперемента)
$_SESSION[\'count\']=$_SESSION[\'count\']+1;
И далее что происходит ....
вконце всех процедур методов перед выводо пользователю делаю print_r($_SESSION);
В нем count => "5"
Ок жму обновить страницу , и вижу вызываеться тотже метод но внем опать $_SESSION[\'count\']=4
Просто ввело в шок......
Как получилось count => "5" :
несколько раз попробовал
class CC
{
      function __construct()
      {
         return 0;
      }
      function CC()
      {
         $_SESSION[\'count\']=@$_SESSION[\'count\']+1;
         return $_SESSION[\'count\'];
      }
}
session_start();
$z=new CC;
echo $z->CC();
Этот скрипт прекрасо добавляет ......

Такой вопрос были у когонибуть проблемы с PHP5 и сессиями или это гдето внутри недочет.....
Название: Session (PHP5)или я заболел:)
Отправлено: sublimity от 27 Августа 2005, 16:18:06
Проблему я решил , а вот почему непонял......

Вот куссок кода :
if ($autologin)
   if (!empty($_SESSION[\'ID\']))
      {
       return $this->login(1,&$_SESSION);
      }
function login($type=0,$ARRAY)
{
......
$_SESSION[$this->session_prefix."PASSWORD"]=md5($rez[\'Passw\']);
else
$_SESSION[$this->session_prefix."PASSWORD"]=\'\';
......
}
Я поправил только &$_SESSION было $_SESSION...

Буду сильно презнателен кто обьеснит вчем причина.....