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