| 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: 12 let
|
|||
0