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

Форум PHP

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

 

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

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

тема: Можно ли использовать в сессиях в качестве переменной обьект?
 
 автор: Zilog   (15.03.2006 в 23:26)   письмо автору
 
 

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

   
 
 автор: midav   (15.03.2006 в 23:29)   письмо автору
 
   для: Zilog   (15.03.2006 в 23:26)
 

В смысле?

   
 
 автор: Zilog   (15.03.2006 в 23:54)   письмо автору
 
   для: midav   (15.03.2006 в 23:29)
 

$myObj = new MyObj;
...
...
session_register("myObj "); <- вот так я могу написать?

   
 
 автор: midav   (15.03.2006 в 23:56)   письмо автору
 
   для: Zilog   (15.03.2006 в 23:54)
 

Походу можно. Но зачем спрашивать если можно проверить :)

   
 
 автор: Zilog   (16.03.2006 в 00:04)   письмо автору
 
   для: midav   (15.03.2006 в 23:56)
 

потому что я проверить могу криво!!! :)))
лучше заручиться поддержкой бывалых.

[поправлено модератором]

   
 
 автор: midav   (16.03.2006 в 00:08)   письмо автору
 
   для: Zilog   (16.03.2006 в 00:04)
 

А если честно то не приходилось самому так делать, поэтому не мого утверждать :))))

   
 
 автор: Zilog   (16.03.2006 в 00:30)   письмо автору
 
   для: Zilog   (15.03.2006 в 23:54)
 

Вопрос все еще актуален!



if (!isset($cart))
{
$cart = new Cart;
session_register("cart");
}
$cart->ShowCart()

При попытке обновить страницу, выводит:

Fatal error: Unknown(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition cart of the object you are trying to operate on was loaded _before_ the session was started in z:\home\wdmag.ru\www\index.php on line 57

   
 
 автор: midav   (16.03.2006 в 00:32)   письмо автору
 
   для: Zilog   (16.03.2006 в 00:30)
 

помоему он ругается на эту строчку

$cart->ShowCart()


или тогда так

if (!isset($cart))
{
$cart = new Cart;
session_register("cart"); 
}
$cart->ShowCart();

   
 
 автор: Zilog   (16.03.2006 в 03:23)   письмо автору
 
   для: Zilog   (15.03.2006 в 23:26)
 

Помогите чайнику!

   
 
 автор: Temnovit   (16.03.2006 в 15:12)   письмо автору
 
   для: Zilog   (16.03.2006 в 03:23)
 

Есть 2 функции РНР которые могут помочь:
serialize(mixed $obj) - упаковывает объект или массив в строку.
unserialize(string $str) - распаковывает объект или массив запакованный при помощи serialize().

Строка получаеться довольно объемная, но работет верно. Помойму в ООП предусмотрены специальные методы для работы с serialize(). Придется каждый раз упаковывать и распаковывать, но думаю со строками проблем в сессии быть не должно.


<?
 $obj 
= new MyObj;
 
$objstr serialize($obj);
 
session_register("objstr");
 
//...
 
$obj unserialize($_SESSION['objstr']);
 
//можно работать
?>

   
 
 автор: Axxil   (16.03.2006 в 15:25)   письмо автору
 
   для: Zilog   (15.03.2006 в 23:26)
 

А зачем целый обьект через сессию таскать?
Может как-то по другому можно сделать...

   
 
 автор: Zilog   (18.03.2006 в 00:11)   письмо автору
 
   для: Axxil   (16.03.2006 в 15:25)
 

Хочу корзину обьектом сделать - по другом незнаю как.

   
 
 автор: Zilog   (18.03.2006 в 00:25)   письмо автору
 
   для: Zilog   (18.03.2006 в 00:11)
 

Проблему решил - установкой пхп5 - недокументированная поддержка обьектов сессиях.

   
 
 автор: Zilog   (18.03.2006 в 00:58)   письмо автору
 
   для: Zilog   (18.03.2006 в 00:25)
 

Хрен там..... поспешил, ошибся.

   
 
 автор: Zilog   (18.03.2006 в 01:04)   письмо автору
 
   для: Zilog   (18.03.2006 в 00:58)
 

мастера! не поясните что тут написано??


Fatal error: main() [function.main]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition "Cart" of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in ght.php on line 25

   
Rambler's Top100
вверх

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