Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

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

 

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

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

тема: Ошибка в php 5.2.1 - Cannot use object of type Session as array in
 
 автор: Eric   (09.09.2007 в 16:18)   письмо автору
 
 

Ребят, столкнулся с такой фишкой в php 5.2.1.
Выдает такую ошибку : Cannot use object of type Session as array in C:\Program Files\Apache Group\Apache2\htdocs\index.php on line 2692 Подскажите, что эта за фигня такая???

   
 
 автор: Саня   (09.09.2007 в 16:31)   письмо автору
 
   для: Eric   (09.09.2007 в 16:18)
 

Покажите код вокруг строки 2692.

   
 
 автор: Eric   (09.09.2007 в 16:42)   письмо автору
 
   для: Саня   (09.09.2007 в 16:31)
 


// Create Class
$mymusic = new Music($HTTP_GET_VARS['action'], $session['username']);

Я все поменял на:

// Create Class
$mymusic = new Music($_GET['action'], $_SESSION['username']);


Понимаешь, проблема в том, что это все php 5.2.1 виноват. После этого появилась часть сайта. Я ОФИГЕЛ!!!!! Теперь такой вопроос, все эти get и session надо везьде поменять??? Ведь session в некоторых местах стоит не перед квадратными скобками ?????

   
 
 автор: isset   (10.09.2007 в 11:14)   письмо автору
 
   для: Eric   (09.09.2007 в 16:42)
 

давай заменим на
$mymusic = new Music($_GET['action'], $_SERVER['username']);
при чем тут сессии, это нас сбить хотят или опечатались..

   
 
 автор: Eric   (10.09.2007 в 14:58)   письмо автору
 
   для: isset   (10.09.2007 в 11:14)
 

Сделал так:


$mymusic = new Music($_GET['action'], $_SESSION['username']);


Все работает! Появились другие проблемы, если register_globals поставить в Off, и register_long_arrays = Off, не происходит ЛОГИН (вход в аккаунт).

   
 
 автор: Eric   (09.09.2007 в 16:54)   письмо автору
 
   для: Саня   (09.09.2007 в 16:31)
 

Или может в php.ini register_long_arrays = On в off перевести??? В таком случае все ок, но инклюд на страницах не происходит, как в php 4.1.2

   
 
 автор: mihdan   (10.09.2007 в 10:42)   письмо автору
 
   для: Eric   (09.09.2007 в 16:18)
 

$session['username'] - это что из сессии ??? На мой взгляд нет

   
 
 автор: Eric   (10.09.2007 в 15:02)   письмо автору
 
   для: mihdan   (10.09.2007 в 10:42)
 

Точно не знаю откуда. Может везьде поменять $session['username'] на $_SESSION['username']. И еще такой вопрос. Там, где

global $session;
или, например

if ($session->username === $row['username'])
(где после session нет квадратных скобок) стоит поменять на $_SESSION. Просто где-то прочитал про обновления пятого php. Сам еще любитель, плохо понимаю в этом, помоги плизз ;))))

   
 
 автор: isset   (10.09.2007 в 17:59)   письмо автору
 
   для: Eric   (10.09.2007 в 15:02)
 

давай так. то что там $session, а не $_SESSION к ошибке и твоей проблеме вообще отношения не имеет.

   
 
 автор: Eric   (10.09.2007 в 18:24)   письмо автору
 
   для: isset   (10.09.2007 в 17:59)
 

Спасибо огромное, что подсказал. С этой проблемой все. Там я новую еще темку открыл, опять проблема вытекла...
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=43031&page=1

   
Rambler's Top100
вверх

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