Autor Zpráva
Rob
Profil
Jak přesměrovat pomocí PHP?? Vím, že je na to funkce header(). Na Jak psát web jsem našel tohle:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.celaadresa.cz");
header("Connection: close");
?>
Já potřebuji, aby script přesměroval na stránku po splnění podmínky. Je to při komunikaci s databází MySQL. Jednoduše řečeno, script ověří jestli jsou zadané údaje při přihlašování správně a když ano, tak to přesměruje na stránku. Můžete mi tedy vysvětli jak header() funguje?? Jo a lze přesměrovávat i na relativní url? Z toho co jsem našel na na JPW nejsem moc chytrej.
Rob
luka
Profil *
header("Location: http://www.celaadresa.cz");

toto by malo byt dobre len nesmie byt pretym ziadny vystup.A ked chces overovat tak to hod rovno do (myslim to overenie) tam kde ho potom ty chces presmerovat tym location ak nesplni podmienku posly ho do kelu blba
halogan
Profil
if (podminka) {
header(...);
}

Kde je problem?
Rob
Profil
Kde byl, možná jsem zapomněl na ty uvozovky. Vyzkouším to.
Rob
Profil
Tak, kde je chyba? Je to jen testovací soubor, tak se moc nesmějte. Proč ta header nefunguje?????????!!!!!!!!!!!!!
Soubor je přirozeně index.php. A háže to bnějakou chybu.
<html>
<head>
<title>Test header()</title>
</head>
<body>
<form method="post" action="index.php">
<select name="pokus" size="1">
<option value="hier" select>Tady</option>
<option value="weg">Jinam</option>
</select>
<input type="submit">
</form>
<?
if ($_POST['pokus'] == 'weg') {
header("location: form.php");
} else {
echo 'tak ne';
}
?>
</body>
</html>
luka
Profil *
pocuj, ty chces robit menu cez select?
Rob
Profil
luka
ne nechci, v žádném případě, takovou blbost bych neudělal. Ale když už to testuju, tak je jedno na čem. Je jedno, jak to testuju, ale podstatné je, že to prostě nefunguju. Proč?? Nevíš??
luka
Profil *
nie , nieje to jedno.Ak by si chcel robit menu alebo vyhodnocovat viac poloziek, tak to rob cez switch ale to by tam uz nemohlo byt myslim ten header

<?php

if ($pokus==1)
{
header("location: form.php");
} else {
echo 'tak ne';
}

?>
<html>
<head>
<title>Test header()</title>
</head>
<body>
<form method="post" action="inde.php">
<select name="pokus" size="1">
<option value="1">Tady</option>
<option value="2">Jinam</option>
</select>
<input type="submit" name="ok" />
</form>
</body>
</html>


<?php

function highlight_source_css($source)
{
$tokens = token_get_all($source);
foreach($tokens as $token)
{
if(is_array($token))
echo '<span class="', strtolower(token_name($token[0])), '">', htmlentities($token[1]), '</span>';
else
echo '<span class="t_other">', htmlentities($token), '</span>';
}
}

?>
luka
Profil *
sory daj si to cez POST a pod., ale aj tak je to blbost ak led neviem co to chces vlastne robit
Question
Profil *
chyba je úplne jasná... nemôžeš volať funckiu header ak si predtým do dokumentu napísal kód formulára (už myslím že aj to <title> vadí). nevypisuje ti náhodou cant modify header information alebo niečo také??? to volanie header musíš dať úplne na začiatok súboru pred akýkoľvek výstup či už html kódu alebo php skriptu (napr. echo) na obrazovku... takže tak...
Robotus
Profil *
vadi uz i mezera/odradkovani...
flying gentleman
Profil
Hoši tak o tom silně pochybuju, ja jsem slysel, ze header(location) muzes dat kamkoliv, ja ji mam na konci souboru, predtim mam 20 řádků a kodu a ze by to nefungovalo?ehm
Hugo
Profil
flying gentleman

Nejde o to, kolik tam mas kodu, ale nesmis poslat zadny vystup prohlizeci. Takze pokud mas pred <?php prazdny radek nebo mezeru, tak se to odesle a pak uz nemuzes posilat hlavicky (pokud nepouzivas funkce pro rizeni vystupu).
Kajman
Profil *
V location by měla být absolutní adresa.
krteczek
Profil
no jde o to že nejprve odešle html hlavičku, a teprve potom přesměrovací.
tohle se ošetřuje tak že na začátek souboru se napíše
<?php ob_start();?>

a na konec souuboru:
<?php ob_end_flush();

při tomhle nevadí že si to uprostřed skriptu rozmyslíš a odešleš novou hlavičku
krteczek
Rob
Profil
Hugo
Aha, takže je to stejné jako cookies.
Rob
Profil
Teď jsem to zkusil. Funguje. Takže díky. Jinak v tom scriptu, kde to chci použít se vytváří i cookie, takže to tak je uzpůsobeno , ale nejdříve jsem to chtěl otestovat. Takže kdybych to tam dal rovnou, tak by to možná běhalo. Každopádně moc díky.
luka
Profil *
ved to co ti napisali vsetci som ti este vcera poslal a napisal stacilo len skopirovat, pana beka
Rob
Profil
luka
Jo, ale to už jsem na net nešel. Já jsem totiž minulý měsít spouštěl dva weby a všechno to vylepšování atd. zabralo docela dost času on-line. Takže se musím krotit, protože ten účet za telefon byl katastrofální. Ale stejně mnohokrát děkuji.
luka
Profil *
ukaz nieco co mas, icq 291764943
Rob
Profil
Sorry, ale s ICQ neumím.
Pro známého jsem dělal http://mapejk.wz.cz. Nic moc, ale úplně to nejhorší to taky není.
A své osobní stránky.
Stará varianta na http://robweb.wz.cz/old/index.htm
a ta nová, která nemá s tou starou prakticky nic společného
http://robweb.wz.cz
Jinak mám něco rozpracované, pro známé.
luka
Profil *
to odkial si stiahol ten chat?
Rob
Profil
luka

Z www.blueboard.cz .

Nechci vypadadat jako idiot - můžeš mi trochu objasnit ten ICQ, vím, že je to rozšířené, ale v podstatě nevím, co to je?
SQI
Profil *
Mno snad Ti nevadí že napíšu já, ICQ, tedy ze slov I seek you je něco podobného jako MSN nebo Yahoo Messenger, jde o to že když jsi on-line, můžeš si pokecat s kýmkoliv kdo má taky ICQ, funguje to jako chat, ale můžeš napsat i někomu kdo je off-line, ten si zprávu vybere až bude zase on-line. Je to hodně používaný, je dobré ho mít, dneska tak komunikuje spousta lidí.

Ještě Ti snad doporučím Mirandu, rychlejší a bez reklam, můžeš využít jak pro účet u ICQ, MSN tak Yahoo. Zkus googlit.
Rob
Profil
SQI
Aha, o tom jsem už slyšel, ale asi mi vypadnul nějak ten název. Díky
Rob
Profil
SQI
Teď si to instaluji. Ještě jednou díky. Určitě to v budoucnu uplatním.
tark
Profil
hlavně nezkoušej ... ten klient z www.icq.com, je to přeplácaný reklamama a pomalý jak ...

zkus třeba www.trillian.cc / www.miranda-im.org
Rob
Profil
tark
Velmi děkuji za doporučení. Už mám Mirandu.
Anonymní
Profil *
<html>
<head>
<title>Test header()</title>
</head>
<body>
<form method="post" action="index.php">
<select name="pokus" size="1">
<option value="hier" select>Tady</option>
<option value="weg">Jinam</option>
</select>
<input type="submit">
</form>
<?


..........
pred header nesmi nic se vypisovat.. jelikoz vypis se posila jiz hlavickou a ty chces posilat jako JESTE dalsi hlavu?
Toto téma je uzamčeno. Odpověď nelze zaslat.

0