Přenešení proměnných na pozadí aplikace

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Miri
Člen | 117
+
0
-

Ahoj,

řeším problém, který by se mi vyřešil jednoduše, kdybych při ajaxovém požadavku mohl nějakým způsobem přenést na pozadí pole, tak aby nebylo v parametrech. Podobně asi fungují flash message, které přežijí reload (to je dělané přes session?). Rád bych z toho session vynechal, pokud by to šlo.

Děkuji za pomoc
Míra

bazo
Člen | 620
+
0
-

flash message funguju cez session
co znamena preniest na pozadi presne u teba?

ak chces preniest pole aby nebolo v parametroch pouzi POST namiesto GET pri ajaxe

Miri
Člen | 117
+
0
-

díky za reakci.

Snažím se přenést systémové nastavení, které potřebuji i při vykreslení snyppetu. Nechci využít session, protože by to kolidovalo s více otevřenými okny v prohlížeči.

Dá se nějakým způsobem zavolat handle abych využil get i post ?

Marek Šneberger
Člen | 130
+
0
-

Co využít payload?

Tomáš Kolinger
Člen | 136
+
+1
-

Flash messages jsou uložený v session a pro rozlišení okna se přenášení v GET parametr „_fid“, kde je unikátní hash pro konkrétní skupinu zpráv v session.

Ano, pokud odesíláš POST požadavek, tak změnou action formuláře (či prostě cílovýho odkazu v případě AJAXovýho požadavku), můžeš poslat jakýkoliv GET parametry. Ač nejlepší řešení je URL (bude fungovat krok zpět/vpřed a navíc lze stránku linkovat), pokud to nechceš v URL, protože se to vyloženě váže na sezení uživatele, tak použí session, protože na to přesně to je určené. Pro identifikaci okna můžeš použít GET/POST jako je to u flash messages.

Výhoda session proti GET/POST je jasná, pokud děláš redirect, tak se v případě session nestaráš o nic, maximálně o předání identifikace okna. Pokud máš ale data v GET či POST, tak musíš u každýho requestu všechny data přeskládat a to je u netriviální struktury (jako je například mapa či pole) celkem otrava.

Editoval Tomáš Kolinger (11. 1. 2015 15:09)