Autor | Zpráva | ||
---|---|---|---|
začátečník Profil * |
#1 · Zasláno: 25. 8. 2014, 15:21:59
Dobrý den,
chtěl bych Vás poprosit o radu jak následující JS script vložit do php. Přesně jde o to že odešlu formulář, výsledek se zapíše do db a následně by měl proběhnout JS script který se mě zeptá kam chci pokračovat. <SCRIPT language="JavaScript"> <!-- function go_there() { var where_to= confirm("Chceš pokračovat v přidávání příspěvku??"); if (where_to== true) { window.location="http://example.com"; } else { window.location="http://example_2.com"; } } //--> </SCRIPT> Uložení do db mám takto, plus je tam backlink který mě přesměruje ihned, místo toho by tam měl být ten JS script. $VlozData=mysql_query("INSERT INTO `user_post`(`name`, `adr`, `datum`, `artist`, `cover`, `website`, `year`, `region`, `klic`, tracklist, `nick`) VALUES ('$name','$adr','$datum','$artist','$cover','$website','$year','$region','$klic','$tracklist','$nick')") or die (mysql_error()); // Vlozim do tabulky hodnoty - prvni je ID - nevyplnim, tvori se samo. // Jako posledni hodnota je "0", to jsou ty prava uzivatele. $backlink="user_post.php"; // presmerovani s hlaskou ze je vse OK |
||
Joker Profil |
#2 · Zasláno: 25. 8. 2014, 16:10:03
začátečník:
Tak může se to udělat přesně tak jak je to v [#1] popsáno, místo přesměrování návštěvníkovi poslat ten skript. Ale není zbytečné kvůli tomu dělat další mezistránku? Nešlo by tu volbu přidat jako normální formulářový prvek k odesílanému formuláři a přesměrování zařídit v PHP? |
||
začátečník Profil * |
#3 · Zasláno: 25. 8. 2014, 16:25:03
No ten js script by me probehnout az po uspesnem vlozeni dat do db. Tu druhou cast vaseho prispevku jaksi nechapu
|
||
Joker Profil |
#4 · Zasláno: 25. 8. 2014, 16:29:50
začátečník:
„Tu druhou cast vaseho prispevku jaksi nechapu“ Předpokládám, že předtím uživatel zadává ty údaje do databáze. Šlo by k nim přidat třeba checkbox „Po odeslání pokračovat v zadávání příspěvku“ a na základě toho se zařídit v PHP. „No ten js script by me probehnout az po uspesnem vlozeni dat do db.“ Jestli je nutné, aby se i dotaz odehrál až po uložení dat do DB (proč?), nezbývá, než uživateli po uložení dat do DB poslat další stránku s tím dotazem. Taky by bylo fajn, aby uživatelé s vypnutým JS neskončili na prázdné stránce. |
||
začátečník Profil * |
#5 · Zasláno: 25. 8. 2014, 16:39:53
Takže takhle jednoduše bez ohledu na vypnutý JS to nejde?
$VlozData=mysql_query("INSERT INTO `user_post`(`name`, `adr`, `datum`, `artist`, `cover`, `website`, `year`, `region`, `klic`, tracklist, `nick`) VALUES ('$name','$adr','$datum','$artist','$cover','$website','$year','$region','$klic','$tracklist','$nick')") or die (mysql_error()); // Vlozim do tabulky hodnoty - prvni je ID - nevyplnim, tvori se samo. // Jako posledni hodnota je "0", to jsou ty prava uzivatele. $backlink="<SCRIPT language=\"JavaScript\"> <!-- function go_there() { var where_to= confirm(\"Chceš pokračovat v přidávání příspěvku??\"); if (where_to== true) { window.location=\"http://example.com\"; } else { window.location=\"http://example_2.com\"; } } //--> </SCRIPT>"; } } header ("Location: $backlink"); No asi ne protože to hlášku nehodí ačkoliv se data zapíšou. |
||
mimochodec Profil |
začátečník:
Takhle rozhodně ne. Tu informaci, jestli se po vložení bude vkládat další položka nebo ne, dostaň z uživatele přímo v tom formuláři. Pokračovat vložením další položky, nebo je tahle už poslední? |
||
začátečník Profil * |
#7 · Zasláno: 25. 8. 2014, 19:58:11
vyřeším to tím checkboxem tak jak píše v [#4] Joker
|
||
Joker Profil |
začátečník [#5]:
Takhle určitě ne. V hlavičce location se posílá adresa, obsah $backlink je HTML kód (resp. JavaScript ve značce <script>). Když už, bylo by nutné to normálně vypsat do stránky přes echo (nebo ukončit PHP a ten kód dát za to) a pak by tu funkci taky něco muselo volat (i když je otázka, proč to vůbec obalovat do funkce, když se to má zavolat jen jednou a okamžitě) a měly by tam být ještě další části stránky, alespoň něco co určí kódování (meta charset, meta content-type, případně header content-type), nejlépe i <title> a tak. A takhle to pořád bude mít ten problém, že lidi s vypnutým JS uvidí prázdnou stránku (protože skript se jim neprovede a žádný obsah tam nebude). To by samozřejmě šlo vyřešit doplněním HTML kódu s normálními HTML odkazy. |
||
začátečník Profil * |
#9 · Zasláno: 25. 8. 2014, 20:42:45
|
||
Časová prodleva: 10 let
|
0