Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Form mail con reindirizzamento

    Ciao a tutti, sto tentando di modificare il seguente form mail che ho trovato in rete(gt). Se i campi sono vuoti appare un popup con un messaggio di errore. Ora vorrei che premendo sul bottone "ok" presente in questa finestra, mi reindirizzasse ad un altra pagina.
    Qualcuno può aiutarmi?

    Vi ringrazio anticipatamente!

    <?php
    // ************Inizio Configurazione***************
    //Indirizzo emai a cui inviare i msg
    $mailto = "mail@dominio.it";
    //Oggetto della mail
    $subject = "mail dal sito";
    //Pagina da mostrare dopo l'invio
    $redirect = "index.html";
    // ************Fine Configurazione****************


    foreach($HTTP_POST_VARS as $key => $value) {

    $message .= $key . ': ' . $value;
    $message .= "\n";

    }
    if (empty($_POST[email]) OR empty($_POST[nome]) OR empty($_POST[contenuto])) {
    echo "<script>alert('Errore: non hai completato tutti i campi o non &egrave; stato possibile l invio del messaggio');</script>";
    exit();
    header("location: $redirect_error");
    } else {
    @mail($mailto, $subject, $message);
    header("location: $redirect");
    }
    ?>

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    quello che hai postato sembra essere lo script di "gestione" del form: comunque pare che in caso di esito positivo dei controlli richiami il file specificato in $redirect... non ti basta impostare lì la tua pagina?

  3. #3
    Codice PHP:

    $redirect 
    "http://www.indirizzosito.ext/pagina.ext"
    ... che modifica il $redirect presente nel tuo script...



    @eiyen : bisogna essere più chiari, altrimenti si confonde ...

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    @seokey: forse hai ragione...

  5. #5
    Si il redirect funziona perfettamente, il problema si presentava quando lasciavo alcuni campi vuoti nel form: si visualizzava la finestra di dialogo alert(), e subito dopo aver dato l'ok, la pagina rimaneva bianca.

    Ho risolto in questo modo:

    if (empty($_POST[email]) OR empty($_POST[nome]) OR empty($_POST[contenuto])) {
    echo "<script>alert('Errore: non hai completato tutti i campi! \\nTra pochi secondi sarai reindirizzato alla pagina contatti.');</script>";
    header("Refresh: 0; contatti.html");
    }

    Ho aggiunto un refresh alla pagina, ed ora me lo reindirizza perfettamente. Grazie comunque

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ok, bene...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.