• User

    Indirizzamento automatico ad un'altra pagina

    Ciao a tutti

    Io ho 3 pagine

    1. Immagine con descrizione in cui c'è elenco dei commenti e un link che porta al form commenti
    2. Commenti.php: form dei commenti
    3. Send_commenti.php: in cui controlla i valori del form e manda tutto nel database.

    Il mio problema è nella terza pagina.
    Dopo aver controllato i dati e se è tutto corretto vorrei che, oltre a mandare i dati nel database, mi rendirizza subito nella prima pagina, quella con l'immagine e l'elenco dei commenti. Se invece c'è qualche errore mi dovrebbe portare nella pagina del form commenti. Voi sapete come si fa in linguaggio PHP ?

    Questo è il pezzo di codice in questione:

    [PHP]if (($nome_mittente <> "") and ($messaggio <> "") and ($email_mittente <> "")) {

    $query = "INSERT INTO commenti
    ( Id_progetto , Commento , Autore , Email , Data )
    VALUES ( '$id','$messaggio','$nome_mittente','$email_mittente','$data'); ";
    //rendirizza alla pagina con elenco immagini
    }

    //meglio se indirizzato alla pagina dei form commenti
    else $msg = "<br/>Occorre compilare tutti i campi. <a href='commento.php?Id=$id&categoria=$categoria&Pag=$pag'>Riprova</a>";
    [/PHP]

    Grazie
    ps. non fare caso alle variabili


  • User

    io conosco un modo ma nn è molto consigliato anzi... è praticamente proibito da tutti i programmatori e nn funziona sempre
    cmq il metodo è questo:
    <?php
    if( $andato_a_buon_fine)
    {
    header ("Location: /URL/pagina1.php");
    exit;
    }
    else
    {
    header ("Location: /URL/commenti.php");
    exit;
    }
    ?>


  • User

    Infatti non mi funziona in quanto mi scrive questo messaggio
    Warning: Cannot modify header information - headers already sent by ...
    perchè non la utilizzo all'inizio della pagina ma solamente ad una certa condizione


  • User

    se nel punto in usi la condizione nn è ancora stato scritto il body puoi mettere:
    <?php
    if( $andato_a_buon_fine)
    {
    echo "<meta HTTP-EQUIV='REFRESH' content='0; url=/url/pagina1.php'>";

    }
    else
    {
    echo "<meta HTTP-EQUIV='REFRESH' content='0; url=/url/commenti.php'>";
    }
    ?>

    nn è il massimo come soluzione ma dovrebbe funzionare


  • User