Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    5

    redirect per form mail php

    Salve a tutti,
    di php non ne so mezza.
    Ho applicato un form mail che ho trovato in rete, ecco il codice:

    <?php
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo

    if ((trim($_POST['object']) != "") && (trim($_POST['body']) != "")) { //questo fa si che se i campi -oggetto- e "messaggio" sono vuoti la form non invia nessuna mail
    $to = "xxxx@miaemail.it";
    $headers = "From: " . $_POST['mail'] . "\n";
    // soggetto della mail
    $subject = "Info about Tuscany";

    // corpo messaggio
    $body = "Contenuto del modulo:\n\n";

    $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n"; //indirizzo e-mail che manda la mail, come si vede riprende l'id del campo destinato all'inserimento della mail del mittente
    $body .= "Nome: " . trim(stripslashes($_POST["object"])) . "\n"; //oggetto del messaggio
    $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n"; //messaggio


    // invio mail
    mail($to, $subject, $body, $headers); // SE L'INOLTRO E' ANDATO A BUON FINE...

    header('location: http://www.sito.ext/sent-message.html');
    exit;

    } else {// altrimenti
    echo "Please get back and retry";

    }

    ?>

    Problema 1 : non funziona il reindirizzamento alla pagina html esterna.

    Problema 2: (ben più grave) provato il form su mio hosting, la mail arriva al destinatario; provato stesso file su hosting del cliente (register), la mail non arriva per niente...
    AIUTO!!!
    Grazie!

  2. #2

    Re: redirect per form mail php

    Originariamente inviato da hikari
    Salve a tutti,
    di php non ne so mezza.
    come per un altro utente
    http://php.html.it/guide/leggi/99/guida-php-di-base/
    http://codecanyon.net/category/all?ref=Manuelandro
    And I bet she told a million people that she'd stay in touch, Well all the little promises they dont mean much,When theres
    memories to be made

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    5
    Grazie,
    ma se avessi il tempo di studiarmi il php da zero, non avrei scritto nel forum...
    H.

  4. #4
    Originariamente inviato da hikari
    Grazie,
    ma se avessi il tempo di studiarmi il php da zero, non avrei scritto nel forum...
    H.
    e allora ti comunico che qui non si fanno i compitini agli altri.
    E poi che vuol dire studiare da zero? vuoi partire da metà?
    http://codecanyon.net/category/all?ref=Manuelandro
    And I bet she told a million people that she'd stay in touch, Well all the little promises they dont mean much,When theres
    memories to be made

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    5
    Io non chiedevo di farmi i compitini ma solo un consiglio, cosa che in altri forum fanno senza tante storie. Se proprio non vuoi sforzarti di regalare a noi poveri mortali il tuo immenso sapere, almeno dai un'indicazione più dettagliata su dove studiarsela da soli.
    Comunque grazie lo stesso.

  6. #6
    Concordo in pieno sul fatto che dovresti capire il funzionamento degli script che usi, quindi lo studio è la prima arma.

    Cmq se può' interessarti io uso solitamente questo metodo:
    Codice PHP:
    // valido indirizzo mail
    $mailval eregi("^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$",$_POST["mail"]);

        if (
    $_POST["object"] != "") && ($_POST["body"] != "") && ($mailval))
        {
            
    $destinatario "mail@xxx.it";
            
    $oggetto "Richiesta info da xxx.it";
            
    $messaggio="<html>
                       <head></head>
                       <body>
                       

    Corpo del messaggio</p>    
                       </body>
                       </html>"
    ;
            
    $tipomail="MIME-Version:1.0\nContent-type: text/html; charset=iso-8859-1";
            
    $intestazioni"From: ".$_POST["mail"]."<".$_POST["mail"].">\r\n$tipomail"
            
    /* Invio della mail */
            
    mail($destinatario$oggetto$messaggio$intestazioni);
            
    header('location: [url]http://www.sito.ext/sent-message.html[/url]');
        }
        else 
        {
             echo 
    "Messaggio di errore";        
        } 
    Ciao

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    5
    Grazie mille, Lorenzo.
    Sì, certo, penso anch'io che devo capire meglio e studiare, e lo sto facendo. Infatti, nel codice che avevo postato, il senso della mia domanda era "perché non funziona?" (e non "come funziona?"), proprio perché mi sembrava di averlo capito...
    Comunque, si vede che non mi sono spiegato bene.
    Grazie ancora per il tuo contributo, proverò anche in questo modo.
    A presto,
    H.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    5
    Ho risolto!
    Per l'utilità di tutti, segnalo la soluzione: bastava inserire nella prima riga in alto della pagina php il seguente codice:

    <?php
    ob_start("ob_gzhandler");
    ?>

    Questo ha risolto il problema del redirect.
    Per l'altro problema (non funzionava su altro hosting), ho appurato che l'hosting del cliente non supportava php...

    Hikari

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.