Autor Zpráva
RastyAmateur
Profil
Dobrý den, mám php script na heslo ale chtěl bych aby se po hesle nezobrazil text ale přesunulo me to na jinou stránku, jde to?

díky
lionel messi
Profil
Treba upraviť toto:
<?php if ($pass == $password): ?>
        
        <h2>Přístup povolen</h2>

        <p>
    Tady je ukrytý obsah, který je dostupný pouze po zadání hesla
    </p>
    <?php endif; ?>

takto:

<?php if ($pass == $password):
        header("Location:http://www.example.com")
        exit;
    endif; ?>
RastyAmateur
Profil
a když to mám v adresáři tak napíši "Location:cil.php" ?
lionel messi
Profil
Radšej "Location:http://localhost/cli.php" alebo inú absolútnu adresu, kde to trebárs na localhoste máš - v dokumentácii sa píše: The field value consists of a single absolute URI.
Chro
Profil
Šlo. Před jakýmkoli výstupem do prohlížeče (tagem html) vlož podmínku s přesměrováním.
<?php
$heslo = 'hash_tajneho_hesla'; //vypocti funkci sha1
if (isset($_POST['pass']) && sha1($_POST['pass']) === $heslo)
{
header('Location: http://domena.cz/tajne.html');
exit;
}
?>
I když, pokud jde vidět, na jakou adresu se přesměrovává, hašování hesla postrádá smysl. Pro pořádek.
RastyAmateur
Profil
a kdyz to pak vlozim na webzdarma.cz tak misto localhost dam adresu, že ano...
Kubo2
Profil
RastyAmateur:
a kdyz to pak vlozim na webzdarma.cz tak misto localhost dam adresu, že ano...
Vždy sa pokúšaj (pri programovaní) veci si uľahčovať a vytvárať ich tak, aby boli čo najviac univerzálne, t.j. aby si po každej úprave a znovunahrávaní skriptu na hosting nemusel stále myslieť na to, že je treba prepisovať doménu v header().
Skús teda napríklad využiť (dnes už spoľahlivú) hodnotu poľa $_SERVER pod kľúčom (indexom) SERVER_NAME, teda $_SERVER["SERVER_NAME"] a túto hodnotu použi pri presmerovávaní namiesto konkrétnej domény. Docieliš tým, že na akýkoľvek server skript nahráš, vždy sa bude presmerovávať na súbor tajne.html na tom určitom serveri.
RastyAmateur
Profil
Kubo2 tak tomu moc nerozumím...
Kubo2
Profil
RastyAmateur:
Mal som na mysli niečo podobné:
<?php
// predošlý kód
// podmienka:
    header("Location: http://" . $_SERVER["SERVER_NAME"] . "/tajne.html", true, 302);
// koniec podmienka;
Chápeš? V premennej, ktorú som použil, bude vždy správne doménové meno servera, na ktorom skript beží.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: