Autor | Zpráva | ||
---|---|---|---|
nekron Profil * |
#1 · Zasláno: 30. 8. 2013, 14:26:40 · Upravil/a: nekron
Ahoj. Mám opravdu velice záhadný problém. odesílám post z jednoho formuláře na stránku. Pokud na stránce, kde se ten post odchytává si ho takhle nechám vypsat :
echo $_POST['login_send']; echo "<br>"; #echo $_POST['login_send']; #exit; if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){...... tak se normálně vypíše, ale v okamžiku kdy odpoznámkuju ten exit ... post zmizí. Prostě už neexistuje... Notice: Undefined index: login_send in C:\dev\www\login_working.php on line 11. Nechápu. Nevíte co by mohlo bejt špatně?omlouvám se... echo $_POST['login_send']; echo "<br>"; #echo $_POST['login_send']; exit; if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ takhle ten post funguje... echo $_POST['login_send']; echo "<br>"; #echo $_POST['login_send']; #exit; if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ takhle ne. sem to nazačítku napsal špatně. |
||
Taps Profil |
#2 · Zasláno: 30. 8. 2013, 14:38:52
nekron:
„ale v okamžiku kdy odpoznámkuju ten exit ... post zmizí.“ exit totiž ukončí skript |
||
nekron Profil * |
#3 · Zasláno: 30. 8. 2013, 14:43:05 · Upravil/a: nekron
Jooo jo sem to jsem špatně napsal. je zapoznámkovanej a post zmizí.
sem to celý napsal zmateně opráceně už jak jsem z toho sám zmatenej |
||
nekron Profil * |
#4 · Zasláno: 30. 8. 2013, 17:56:40
No nechápu to. zkouším různě přehazovat ten exit a když tam nějakej exit neni, tak prostě to nefunguje. Je nějaká podmínka v php že někdě musí bejt exit; ??
|
||
Taps Profil |
#5 · Zasláno: 30. 8. 2013, 17:57:39
nekron:
ukaž formulář + kod, který zpracovává poslaná data |
||
nekron Profil * |
#6 · Zasláno: 30. 8. 2013, 18:04:25 · Upravil/a: nekron
tohle je prvni php : login.php
<?php if(!isset($_SESSION['nick_login'])){ $_SESSION['nick_login'] = ""; $smarty->assign("uzivatelsky_nick","",true); }else{ $smarty->assign("uzivatelsky_nick",$_SESSION['nick_login'],true); } $smarty->display($_SESSION['language'].'/templates/login.tpl'); ?> tohle je html kterej to odesílá. SMARTY... login.tpl <h1>Přihlášení</h1> <form action="music_portal.php?page=login_working" method="post"> <input type="text" id="nick_login" name="nick" maxlength="20" value ="{$uzivatelsky_nick}"> <br> <input type="password" name="password" maxlength="255" value =""> <br> <input type="submit" name="login_send" value="x"> </form> <script type="text/javascript"> document.getElementById("nick_login").focus(); </script> no a tohle to zpracovává : login_working.php <?php if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ echo "konecne"; }else{ echo "post neexistuje. proč?"; exit; $lokalita = "music_portal.php?page=login&system_window=17"; } header ("Location: " . $lokalita); exit; ?> a podmínka se prostě zááhadně vybere podle toho kde je umístěnej exit; ... prostě tomu fakt nerozumim. když to přehodim jako takhle : <?php if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ echo "konecne"; exit; }else{ echo "post neexistuje. proč?"; $lokalita = "music_portal.php?page=login&system_window=17"; } header ("Location: " . $lokalita); exit; ?> tak vypíše "konecne" :DDD prostě to je nějaká komedie... ta podmínka se rozhodne podle toho kde je umístěnej exit; jak je tohle možný? |
||
Davex Profil |
#7 · Zasláno: 30. 8. 2013, 18:18:04
Když přesměruješ pomocí hlavičky
Location na 11. řádku, tak uvidíš až stránku na cílové adrese, kam se při přesměrování $_POST nepřenáší. Jakmile ukončíš skript příkazem exit , tak se skript ihned ukončí a nikam se nepřesměrovává.
|
||
nekron Profil * |
#8 · Zasláno: 30. 8. 2013, 18:29:43 · Upravil/a: nekron
Davex:
Já vám buď nerozumím nebo vy mě. To s tim nemá nic společného. KDyž řádek 11 zapoznámkuju děje se to samé Podmínka se rozhodne podle toho kde je exit. ta část podmínky se prostě vybere. Davex: Ahaaa. Já možná začínám chápat... jako že by to celý ta záhada byla tím že jsem taková guma že to vlastně znova přesměrovávám samo na sebe a takže se to protočí jako... a pak tam logicky ten post neni už. Ale vždyť já přece tu lokalitu vracím na login... né na login_working ... sem zmatený sám ze sebe už |
||
Davex Profil |
#9 · Zasláno: 30. 8. 2013, 18:54:34
Stačí vyzkoušet tyto dva skripty, které by měly shodně vypsat
konecne a jejich provedení by nemělo být závislé na umístění příkazu exit .
<?php if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ echo "konecne"; exit; }else{ echo "post neexistuje. proč?"; $lokalita = "music_portal.php?page=login&system_window=17"; } exit; // nic dalšího <?php if(isset($_POST['login_send']) and ($_POST['login_send'] == 'x')){ echo "konecne"; }else{ echo "post neexistuje. proč?"; exit; $lokalita = "music_portal.php?page=login&system_window=17"; } exit; // nic dalšího |
||
nekron Profil * |
#10 · Zasláno: 30. 8. 2013, 19:31:40
Davex, Davex:
Děkuju Vám. Děkuju! Bez Vás bych z toho měl zas záhadu na týden. Už to chápu. :) |
||
Časová prodleva: 11 let
|
0