HTML_PEAR & сессии сервера

dmnsuslov

Новичок
HTML_PEAR & сессии сервера

Для начала: кто-нибудь плотно пользует HTML_AJAX?

Я только начинаю разбираться с этим зверем. Документации мало, поэтому приходится практически методом тыка.

Есть у меня такая задача: нужно редактировать свойства пользовательских аккаунтов. Т.е. на экран выводится форма, на которой есть несколько input type="text", которые отображают содержимое соответствующих свойств выбранного аккаунта (типа "first_name", "last_name", "email" и т.д.). Мне нужно без перезагрузки страницы поймать событие onSubmit формы и обновить эти свойства в БД на сервере, разумеется, предварительно проверив их на валидность.

Я написал простой сервер:

PHP:
 require_once('HTML/AJAX/Server.php');
 require_once('classes/users.class.php');

 $users = new users();
 $server = new HTML_AJAX_Server();
 $server -> registerClass($users);
 $server -> handleRequest();
он сидит в файле ajax.server.users_control.php

на страничке у меня есть такая JS-функция:

PHP:
function save_form()
{
 var user_obj = new users();
 user_obj.find_user(document.getElementById('user_id').value);
 user_obj.set_first_name(document.getElementById('first_name').value);
 return true;
}
и добавлен арибут к тегу form для перехвата события нажатия кнопки submit:

PHP:
<form onsubmit="return !save_form();">
Но вот проблема: как я выяснил, между двумя вызовами методов user_obj.find_user и user_obj.set_first_name серверный объект класса users теряет значения своих свойств. Т.е. если методом find_user я устанавливаю значения некоторых свойств объекта $users в скрипте сервера, то к моменту вызова метода set_first_name в свойствах этого объекта уже ничего нет :mad:

Как тут лучше поступить? Может, есть какие-нибудь ссылки на доки на эту тему?
 

Фанат

oncle terrible
Команда форума
: как я выяснил, между двумя вызовами методов user_obj.find_user и user_obj.set_first_name серверный объект класса users теряет значения своих свойств.
удивительно, правда?

зачем тебе нужны эти свойства?

-~{}~ 17.05.06 17:32:

то к моменту вызова метода set_first_name в свойствах этого объекта уже ничего нет
устанавливай заново

-~{}~ 17.05.06 17:34:

есть какие-нибудь ссылки на доки на эту тему?
есть, а как же.
PHP FAQ: Самые основы. Как работает PHP.
читать до полного просветления
 

dmnsuslov

Новичок
Автор оригинала: Фанат
удивительно, правда?

зачем тебе нужны эти свойства?

-~{}~ 17.05.06 17:32:


устанавливай заново
В них хранится, например, указатель на соединение с MySQL, идентификатор пользователя, найденного методом find_user() и т.д.

Не хотелось бы терять всю полезность ООП, переходя на функциональное программирование... :-( Тем более, что у меня уже имеется целая иерархия классов...
 

Фанат

oncle terrible
Команда форума
ссылку читай.
а потом уже рассказывай мне про полезность ООП
если останется такое желание.
 
Сверху