Autor | Zpráva | ||
---|---|---|---|
radecek Profil |
#1 · Zasláno: 21. 1. 2009, 22:10:25
Ahoj,
dejme tomu že máme web, který umí odesílat vzkazy kamarádům po odeslání vzkazu chceme uživateli vypsat - VZKAZ BYL ODESLAN. Jak to udělat dobře aby uživatel neviděl předaní žádné proměnné - URL. Napadly mě 3 řešení: SESSION MySQL - do tabulky by se napsala buď celá hláška, její kód, ... a uživatelské ID při vypsaní by se řádky vymazaly URL - uživatel všechno vidí Předav ve scriptu - nechci při reloadu se uloží řádek 2x, i když by se mohlo dát do formu neviditelné tlačítko s časem nebo nečím takovým |
||
jogurt Profil |
#2 · Zasláno: 22. 1. 2009, 02:44:43
Poslat ho na stranku, kde bude napsano "VZKAZ BYL ODESLAN"?
|
||
grimword Profil |
#3 · Zasláno: 22. 1. 2009, 03:52:18
vyhodnocovací stránka
if(post[vzkaz] != "" and session[prihlasen] == "ano") { mysql insert odkoho & komu & zprava echo zprava ulozena } else { echo vyskytl se problem } |
||
radecek Profil |
#4 · Zasláno: 22. 1. 2009, 12:47:05 · Upravil/a: radecek
jogurt
Toto řešení se mi nelíbí zdržuje. Třebas je na některých fórech že za 10 sekund budu přesměrovaný na téma. grimword Toto je standartní řešení, ale při zmáčknutí F5 nebo obnovení stránky se vzkaz odešlě ještě jednou. Potřebuju vymazat POST, aby při obnovení stránky neexistovala.. |
||
Mastodont Profil |
#5 · Zasláno: 22. 1. 2009, 12:52:41
PŘE-SMĚ-RO-VAT, je to tu stokrát.
|
||
radecek Profil |
#6 · Zasláno: 22. 1. 2009, 12:57:36
„PŘE-SMĚ-RO-VAT, je to tu stokrát.“
„uživatel neviděl předaní žádné proměnné - URL.“ Jak to udělat jinak? Co by bylo nejlepší a vždy funkční? Nechci psát do adresy msg=3 chci tento zápís schovat. |
||
Mastodont Profil |
#7 · Zasláno: 22. 1. 2009, 13:02:12
Přesměruj třeba na index.php a do sešny ulož parametr, který do titulní stránky jednou přidá rámeček se vzkazem. Variant je iks.
|
||
radecek Profil |
#8 · Zasláno: 22. 1. 2009, 13:08:08
Session se nedá vypnout jako cookie že? A jak si myslíte že je to použitelné to s tabulkou.
#header if(post){ vloz_vzkaz = insert vzkaz values(v); vloz_msg = insert msg values("OK"); location("home.php"); } #body sel = select msg; while(m = mysql_fetch_array(sel)){ echo m[msg]; } del = delete vzkaz where id = UID Toto byla taková kostra algoritmu :) |
||
Mastodont Profil |
#9 · Zasláno: 22. 1. 2009, 13:19:21
Ne, sešnu klient nevypne. Ale proč to strkat do tabulky a mít další select z databáze?
|
||
radecek Profil |
#10 · Zasláno: 22. 1. 2009, 13:26:32
Takže session je ideální.. Dobře zkusím to ;)
|
||
Majkl578 Profil |
#11 · Zasláno: 22. 1. 2009, 13:47:32
session se da vypnout, staci mit zakazane cookies. v tom pripade se pokazde vytvori nova a vzdy bude prazdna.
|
||
Anonymní Profil * |
#12 · Zasláno: 22. 1. 2009, 13:51:24
Majkl578
Hmm fakt :) Ale zase na druhou stranu když má někdo vyplné cookie tak se ani nepříhlásí, tak žádné vzkazy odesílat nemůže. |
||
radecek Profil |
#13 · Zasláno: 22. 1. 2009, 13:52:38
Odhlásilo mě to :( No nevadí
|
||
joe Profil |
#14 · Zasláno: 22. 1. 2009, 14:19:10
Mastodont
Sessions jsou spojené s cookies, tak jak by mohly pořád fungovat?! radecek Před přesměrování ulož do sessions třeba přímo ten text nebo jen její nějaké id. Po přesměrování zobraz ten text a tu session proměnnou smaž pomocí unset. |
||
radecek Profil |
#15 · Zasláno: 22. 1. 2009, 14:21:08
joe
„Před přesměrování ulož do sessions třeba přímo ten text nebo jen její nějaké id. Po přesměrování zobraz ten text a tu session proměnnou smaž pomocí unset.“ Jasně toto jsem potřeboval vědět :) A co se týče složitosti a rychlosti scriptu tak se zas tak moc neděje že? |
||
joe Profil |
#16 · Zasláno: 22. 1. 2009, 14:23:25
radecek
Složité, je to na dva řádky :-) Je to běžný postup. |
||
Mastodont Profil |
#17 · Zasláno: 22. 1. 2009, 14:25:45
joe
Já měl dojem, že sešny mohou fungovat i pomocí trans_id, tedy bez cookies. Víš o nějaké novince v tomto směru? |
||
joe Profil |
#18 · Zasláno: 22. 1. 2009, 14:53:58
Mastodont
Jasně že můžou, ale už i z důvodů bězpečnosti se to nedoporučuje. |
||
Časová prodleva: 14 let
|
0