Autor Zpráva
JimmyCz
Profil
Zdravím, chtěl bych se zeptat, jak bych mohl udělat admin sekci.
Jde mi o to,že bych nechtěl xx.cz/novinka.php atp. ale xx.cz/admin_akce?novinka a tak podobně.

Chtěl jsem to udělat takhle, místo ECHO bych tam includoval všechny funkce atp.

if (isset($_GET['mail']) === true && empty($_GET['mail']) === true){
        echo 'Mail funkce';
    }    else {
    }
if (isset($_GET['uzivatele']) === true && empty($_GET['uzivatele']) === true){
        echo 'Uzivatele';
    }    else {
    }    

Takhle by to šlo ,jenže nikde není definovaná funkce ELSE,tudíž když zadáte xx.cz/admin_akce?blabla tak vám to zobrazí prázdnou stránku. Nevím jak by to mohl jinak udělat.
Děkuji za vaši pomoc
MartinP_
Profil *
if (isset($_GET['mail'])){
    echo 'Mail funkce';
} elseif (isset($_GET['uzivatele'])){
    echo 'Uzivatele';
} else {
    echo 'Stránka neexistuje!';
}

Zkus také pouvažovat nad univerzálním mod_rewrite pravidlem, mohl bys díky němu skoro bez práce mít url typu example.cz/admin/uzivatele/.
tiso
Profil
Použi switch
JimmyCz
Profil
To ano, buď jak píše MartinP nebo tiso tak by to tak šlo. Jenže např. stránka MAIL má svojí funkci,která se odesílá na mail.php?success. A to nevím jak udělat. Zde máte kousek kódu té funkce MAIL.
mail_users($_POST['predmet'], $_POST['zprava']);
            header("Location: admin_mail?success");
            exit();
tiso
Profil
JimmyCz: skôr by som vyrábal url v tvare: example.com/admin/mail a example.com/admin/mail/success
MartinP_
Profil *
Já bych stavy akcí vůbec necpal do URL, ale použil bych na to sessions. Možná ti pomůže výraz flash messages.
JimmyCz
Profil
<?
if (isset($_GET['success']) === true && empty($_GET['success']) === true) {
?>
 <span style="color:green"><center>Emaily byly odeslány!</center></span>
<?    
} else {
    if (empty($_POST) === false) {
        if (empty($_POST['predmet']) === true) {
            $errors[] = '<span style="color:red">Musíte vyplňit předmět!</Span><br>';
        }
        
        if (empty($_POST['zprava']) === true) {
            $errors[] = '<span style="color:red">Text zprávy musí být vyplněn!</Span>';
        }
        
        if (empty($errors) === false) {
            echo output_errors($errors);        
        } else {
            mail_users($_POST['predmet'], $_POST['zprava']);
            header("Location: admin_mail?success");
            exit();
        }
    }
    ?>

MartinP: Nevím jak bych toto předělal na ty flash messages.
tiso: Nevím jak tohle udělat :(
JimmyCz
Profil
MartinP: Pokud bys mi mohl poradit Flash Messages vložím do toho kódu,tak bych byl moc rád

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: