Autor Zpráva
quatzael
Profil
Mám session, kvůli přihlašování uživatelů. Do formulářů mi tady někdo poradil, abych si dal header_remove(), aby se stránka furt znovu nenačítala, když někdo klikne na tlačítko zpět. Jenže teď když začne formulář vyplňovat jako přihlášený a na nějaké stránce formuláře se odhlásí, tak pokud stiskne tlačítko zpět zobrazí se mu předchozí stránka, kde mu to ukazuje, že je přihlášený, přestože už není. Musí se refreshovat stránka, aby se objevilo, že už přihlášen není.

stránka začíná takhle:

<?php
session_start();
header_remove('Cache-Control');
header_remove('Expires');
header_remove('Pragma');

Řekl bych, že uvedený problém způsobuje některý z těch header_remove().
Nedá se to nějak vyřešit?
ShiraNai7
Profil
Zrušením těch hlaviček právě způsobíš, že prohlížeč nemusí stránku načíst znovu ze serveru, jak jsi psal. Pokud ti to nevyhovuje, tak to nepoužívej - ty hlavičky mají svůj účel. A zachovávání dat formulářů se dá řešit jinak.
quatzael
Profil
ShiraNai7:
Zrušením těch hlaviček právě způsobíš, že prohlížeč nemusí stránku načíst znovu ze serveru, jak jsi psal.
Moc to nechápu jak to myslíš..

Když tam ty hlavičky nejsou, tak se to chová tak, že když kliknu na tlačítko zpět tak se objeví bílá stránka a zeptá se to jestli chci data znova odeslat na server (nebo načíst ze serveru - už přesně nevím).
Každopádně se když kliknu na ok tak se načtou všechny hodnoty $_POST a aktuální proměnný $_SESSION.
Teď když tam jsou, tak $_POST proměnný tam zůstanou původní, ale aktuální proměnná $SESSION, kterou mezitím změním se tam nenačte.

Já bych chtěl jen, aby se tam nezobrazovala ta výzva k odsouhlasením toho znovu načtení, ale aby to bylo provedeno automaticky a chovalo se to tak, že se načtou i ty aktuální proměnné $_SESSION..


quatzael:
Zachovávání dat ve formulářích řeším i přes JS, ale jde mi čistě o to, aby se tam nezobrazovala ta výzva, ale při tom, aby se to chovalo jako by uživatel klik na ok.

Teď se to tak nechová, protože když kliknu na svý stránce na tlačítko odhlásit, který mi zruší proměnnou $_SESSION a zobrazí aktuální stránku jako, že není nikdo přihlášen a potom kliknu zpět vratí mě to o stránku před, na které se zobrazuje, že jsem pořád přihlášen. Musím refreshovat, aby se zobrazilo, že uživatel není přihlášen.

Naopak zase když nejsem přihlášen a přihlásím se, zobrazí se mi aktuální stránka, kde se zobrazí, že jsem přihlášen a když kliknu na tlačítko pět tak se objeví předchozí stránka zase ve vyobrazení, že nejsem přihlášen. Musím zase refreshovat, aby se zobrazilo, že jsem přihlášen.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: