powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Использование cookie
10 сообщений из 10, страница 1 из 1
Использование cookie
    #37960899
Victor178SPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Хочу описать свою проблему. В apex'е я новичок поэтому не судите строго.
Создал небольшой сайт с несколькими interactive reports(пока). На главной странице есть меню представляет оно собой аккордион, однако все пункты могут разворачиваться и сворачиваться.
Собственно проблема: мне необходимо чтобы на отображаемой странице развернулись пункты меню, которые я развернул на прошлой. После завершения сессии, когда пользователь вернулся на сайт, необходимо чтобы также те пункты меню были открыты.
Я нашел способ APEX simple cookie example . Согласно ему я создаю процесс. В Process text указываю
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
begin
 owa_util.mime_header('text/html', FALSE);
 owa_cookie.send(
     name=>'APEX_AT_WORK_COOKIE',
     value=>'1',
     expires => sysdate + 30);

 apex_application.g_unrecoverable_error := true;
 owa_util.redirect_url('f?p=&APP_ID.:12:&SESSION.');
 exception when others then null;
end;


А в Region Condition выбираю параметр PL/SQL Function Body Returning a Boolean и
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
DECLARE
 cookie  OWA_COOKIE.cookie;  
BEGIN

   cookie := OWA_COOKIE.get('APEX_AT_WORK_COOKIE');

   if cookie.vals.First IS NULL then 
    return true;
   else 
    return false; 
   end if;

END;



Но результата после всего этого нету. Что я делаю ни так? Кто сможет помочь??!!
...
Рейтинг: 0 / 0
Использование cookie
    #37960932
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor178SPb,

А что вы хотите собственно получить?

У вас написано cookie.vals.First IS NOT NULL => return false; т.е. если задана кука регион не выводить,
Victor178SPbНо результата после всего этого нету.
стоит ли это понимать что регион не выводится, т.е. резальтат ожидаемый?

Вы не указали:

1. Версия APEX
2. Версия браузера и настройки, касающиеся работы с cookie
3. Какой процесс, когда он срабатывает, посмотрите в debug что он срабатывает и срабатывает раньше Region Condition
4. Дата клиента и сервера отличаются не больше 30 дней
5. Проверьте кэш (т.е. что содержимое страниц при этом обновляется)
...
Рейтинг: 0 / 0
Использование cookie
    #37960950
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это что, где-то такой тест на профпригодность сделали? Там один аккордеонист: 13156044 , здесь -- второй...
...
Рейтинг: 0 / 0
Использование cookie
    #37960987
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
suPPLer,

Кстати да, забавное совпадение


alexande26kПередо мной поставлена некоторая задача, и в одном из пунктов написано:

1.сайт должен быть настроен на соединение с БД ***********
2.Для формирования данных для построения отчета «Один из моих разделов» необходимо использовать следующую выборку:

"Имеется некоторая выборка".

Поясните кто нибудь пожалуйста по поводу соединения?! Как его можно настроить?!
Похоже на какую-то учебную задачу
...
Рейтинг: 0 / 0
Использование cookie
    #37961670
Фотография SEBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно без cookie) Cохраняй сначала свой активный пункт в Application Item через saveAppItem, а потом при генерации страницы
в After Regions воспользуйся этим Item и активируй свой пункт))

Код: javascript
1.
2.
3.
4.
5.
function saveAppItem(name,value){
    var get = new apex.ajax.ondemand();
    get.ajax.add(name,value);
    get.ajax.get();
}



А если с cookie, делай без PLSQL все на js так правильней cookie c браузером хранятся сервер про них ничего знать не должен))
Раньше вот этими функциями пользовался вроде рабочие:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure ) {
  var cookie_string = name + "=" + escape ( value );
  if(exp_y) {
    var expires = new Date ( exp_y, exp_m, exp_d );
    cookie_string += "; expires=" + expires.toGMTString();
  }
  if(path)
    cookie_string += "; path=" + escape ( path );
  if(domain)
    cookie_string += "; domain=" + escape ( domain );
  if(secure)
    cookie_string += "; secure";
  document.cookie = cookie_string;
}

function get_cookie ( cookie_name ) {
  var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
  if ( results )
    return ( unescape ( results[2] ) );
  else
    return null;
}

function delete_cookie ( cookie_name ) {
  var cookie_date = new Date ( );  // Текущая дата и время
  cookie_date.setTime ( cookie_date.getTime() - 1 );
  document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
...
Рейтинг: 0 / 0
Использование cookie
    #37961692
Фотография SEBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor178SPb После завершения сессии, когда пользователь вернулся на сайт, необходимо чтобы также те пункты меню были открыты.


Извиняюсь в этом случаи через Item не получится в текущей сессии только, значит делать через cookie только
...
Рейтинг: 0 / 0
Использование cookie
    #37961854
Victor178SPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SEBA,

А куда именно этот js надо поставить?
...
Рейтинг: 0 / 0
Использование cookie
    #37963279
Фотография SEBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor178SPbSEBA,

А куда именно этот js надо поставить?


вариант1) "EditPage"->"Function and Global Variable Declaration" и добавляешь эти функции
вариант2)
2.1)создаешь js файл и пихаешь туды эти функции для работы с cookie
2.2) идешь в SharedComponent->StaticFiles добавляешь этот js файл туды
2.3) SharedComponent->Templates, находишь template cвоей страницы и вставляешь в header что-то типо:
<script language="javascript" type= "text/javascript" src="#WORKSPACE_IMAGES#cookie.js">
...
Рейтинг: 0 / 0
Использование cookie
    #37964256
Victor178SPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SEBA,

Я так и делаю, но почему то это не помогает.
...
Рейтинг: 0 / 0
Использование cookie
    #37965650
Фотография SEBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor178SPbSEBA,

Я так и делаю, но почему то это не помогает.

а что не получается?
функции не доступны из js кода или соokie не доступны?

У вас задача вообще отвязана от Apex, чисто на знание js!
1. создаете сооkie c номером пункта по которому кликаете
2. а потом развертываете этот пункт при загрузке страницы( тем же js по которому пункт по клику разварачивается)
этот js код как вариант можно поместить в Edit Page->Execute when Page Loads
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Использование cookie
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]