Autor | Zpráva | ||
---|---|---|---|
stehno Profil * |
#1 · Zasláno: 14. 2. 2008, 22:58:58
viete niekto ako presmerovat stranku po vystupe????
<html> <head><title> </title></head> <body> ............. <?php if($_POST["name"]=="") { echo"<form....>\r\n"; echo"<p><input type='text' name='data' />Meno</p>\r\n"; atd.... ....................... } else { $ggg=mysql_query("INSERT INTO account(name,pass,mail) VALUES('".$_POST["name"]."','".$_POST["pass"]."','".$_POST["mail"]."') "); if($ggg==true) { echo"OK"; ///// potrebujem presmerovat na index ///// header pouzit nemozem.. :-( ///// da sa to nejako v phpcku??? } } ?> ....................... </body></html> |
||
ninja Profil |
#2 · Zasláno: 14. 2. 2008, 23:20:15
Proc nemuzes pouzit header?
Primo v php: header('Location: http://www.example.com/index.php'); header("Connection: close"); exit (); |
||
stehno Profil * |
#3 · Zasláno: 14. 2. 2008, 23:36:51
Proc nemuzes pouzit header?
Primo v php: header('Location: http://www.example.com/index.php'); header("Connection: close"); exit (); <html><head> <title>test.php</title> </head><body> <?php header('Location: http://localhost/test2.php'); header('Connection: close'); exit; ?> </body></html> Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\test.php:5) in C:\wamp\www\test.php on line 6 Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\test.php:5) in C:\wamp\www\test.php on line 7 |
||
ninja Profil |
#4 · Zasláno: 14. 2. 2008, 23:53:57
stehno: logiku aplikace (stranky) mej celou vyresenou predtim, nez zacnes neco vypisovat. Je to i prehlednejsi.
|
||
stehno Profil * |
#5 · Zasláno: 15. 2. 2008, 00:27:09
stehno: logiku aplikace (stranky) mej celou vyresenou predtim, nez zacnes neco vypisovat. Je to i prehlednejsi.
struktura je takato... len som chcel vediet ci sa da nejako presmerovat v php ak uz bolo nieco na vystupe.. pred headerom nesmie byt echo pokial tomu rozumiem. chcel som vediet ci je este nejaka moznost. ak nie budem muset dat javascript :-(( index.php <?php include("function.php"); ?> <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1250' /> <title><?php TitleBoot(); ?></title> </head> <body> <?php ConnectMySQL(); $index_page = $_GET["pg"]; $index_folder = "x_pages/"; $index_home_page = "home.php"; if($index_page) { if(file_exists($index_folder . $index_page . ".php")) {include($index_folder . $index_page . ".php");} else {include($index_folder . "404.php");} } else { include($index_folder . $index_home_page); } if($SQL == true) { mysql_close($SQL); } ?> </body> </html> ******************************************************** index.php?pg=accoun x_pages/account.php (nedokoncene) function AccountRegisterSQL() { if(($_POST["regname"]=="")and($_POST["regpass"]=="")and($_POST["regmai l"]=="")) { echo"<form action='index.php?pg=account&submit=true' method='post'>\r\n"; echo"<p><input type='text' name='regname' size='20' maxlength='20' /> Meno</p>\r\n"; echo"<p><input type='password' name='regpass' size='20' maxlength='20' /> Heslo</p>\r\n"; echo"<p><input type='text' name='regmail' size='20' maxlength='30' /> Mail</p>\r\n"; echo"<p><input type='submit' name='ok' /></p>\r\n"; echo"</form>\r\n"; } if($_GET["submit"]=="true") { if(($_POST["regname"]!="")and($_POST["regpass"]!="")and($_POST["regmai l"]!="")) { $ok_ko=mysql_query("INSERT INTO x_account(name,pass,mail) VALUES('".$_POST["regname"]."','".$_POST["regpass"]."','".$_POST["regm ail"]."')"); if($ok_ko==true) { echo"True"; ////////////////// POTREBUJEM PRESMEROVAT } } } } |
||
Mastodont Profil |
#6 · Zasláno: 15. 2. 2008, 08:31:02
stehno
Nechápu tvou logiku. Ty chceš něco poslat na výstup a pak přesměrovat? Myslíš si, že ten předchozí výstup stihne někdo přečíst? :-)) |
||
Apostol Profil * |
#7 · Zasláno: 15. 2. 2008, 08:40:19
stehno
jak se ti tady snaží nešikovně naznačit, nejdřív udělej PHP (tím nebudeš mít žádný výstup a můžeš přesměrovat) a pak HTML. |
||
Leo Profil |
#8 · Zasláno: 15. 2. 2008, 08:47:47
Pokud si opravdu myslite, ze je nezbytne, aby uzivatel cosi videl a pak mu stranka sama zmizela, tak to musite udelat na strane klienta - meta tag pro refresh nebo javascript (a v nem radeji location.replace nez jen zmena location.href), Leo
|
||
Jack Finger Profil |
#9 · Zasláno: 15. 2. 2008, 08:52:23
stehno
souhlasím s ostatními, ale pokud chceš opravdu setrvat ve svém řešení, myslím, že se dá použít ob_start() a ob_end_flush(). |
||
Leo Profil |
#10 · Zasláno: 15. 2. 2008, 09:01:18
"souhlasím s ostatními, ale pokud chceš opravdu setrvat ve svém řešení, myslím, že se dá použít
ob_start() a ob_end_flush()." Neda. To akorat umozni mit bordel v kodu (pouziva se na uplne jine veci), takze nedojde k chybe headers already sent, ale nic to nemeni na to, ze nema smysl posilat presmerovaci hlavicku a obsah zaroven. Co ma udelat prohlizec? Presmerovat (a ignorovat vystup) nebo zpracovat html (a ignorivat hlavicky 30x)? Leo |
||
Jack Finger Profil |
#11 · Zasláno: 15. 2. 2008, 09:05:30
Neda
Tak ne no. Asi se mi to popletlo s něčím jiným. Každopádně se přikláním ke všeobecnému názoru nejdřív PHP, pak výpis do prohlížeče. |
||
Časová prodleva: 16 let
|
0