Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [Tutorial] Gestione di un form mail semplice
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • H
      hikari User Attivo • 16 lug 2012, 12:34 ultima modifica di

      Ciao e grazie.
      Ho inserito il codice, ma il redirect va ancora alla pagina "invio.php", che resta in bianco.
      Ho provato a mettere, dopo "Location", sia una pagina della stessa directory, sia un'altra pagina con l'url completo con l'http, il www e il .html finale, ma niente...
      L'email, invece mi arriva correttamente nella casella destinatario.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        thedarkita ModSenior • 16 lug 2012, 12:56 ultima modifica di

        Puoi postare il codice che hai utilizzato e dà questo problema?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • H
          hikari User Attivo • 16 lug 2012, 13:00 ultima modifica di

          ...e già che ci sono ne è saltata fuori un'altra: facendo le varie prove con un mio dominio, l'email arriva; adesso ho provato a caricare lo stesso file nel domino del cliente e... non arriva l'email... :bho:
          L'hosting del cliente è register, con il piano "base": potrebbe essere che non supporta php?
          Grazie ancora.
          H.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • H
            hikari User Attivo • 16 lug 2012, 13:02 ultima modifica di

            certo!
            <body>
            <?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 = "hikari@miaemail.com";
            $headers = "From: " . $_POST['mail'] . "\n";
            // soggetto della mail
            $subject = "Info about ...";

            // 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...

            [LEFT]header('Location: mia_pagina.html');
            exit;[/LEFT]

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

            }

            ?>
            </body>

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              thedarkita ModSenior • 16 lug 2012, 13:09 ultima modifica di

              Per la pagina bianca mi sembra impossibile, il codice è corretto, non dovrebbe dare problemi.
              Oggi come oggi è abbastanza impossibile che un hosting non supporti php, ma in ogni caso devi vedere il tuo piano hosting cosa fornisce. Per l'email che non arriva, potrebbe essere semplicemente che finisce in spam.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • H
                hikari User Attivo • 16 lug 2012, 13:24 ultima modifica di

                Grazie comunque, Thedarkita.
                Ahimè, i miei 2 problemi restano irrisolti...
                La pagina bianca persiste; l'hosting del cliente supporta php ma l'email non arriva. Ho provato a cambiare anche indirizzo destinatario (prendendo in considerazione lo spamming), ma niente: dal mio hosting, l'email arriva ovunque, da register, non arriva... 😢

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  thedarkita ModSenior • 16 lug 2012, 17:23 ultima modifica di

                  La pagina bianca te la dà con qualsiasi browser, e su entrambi gli hosting?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • H
                    hikari User Attivo • 17 lug 2012, 09:21 ultima modifica di

                    @Thedarkita said:

                    La pagina bianca te la dà con qualsiasi browser, e su entrambi gli hosting?
                    sì, provato con explorer, firefox, chrome (mi manca solo safari...) e il reindirizzamento non lo fa, va sempre alla pagina invio.php bianca...
                    Inoltre, dal mio hosting, almeno l'email arriva; da register, non arriva proprio...
                    :arrabbiato:

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      thedarkita ModSenior • 17 lug 2012, 11:48 ultima modifica di

                      Per il redirect ho visto ora il problema, mandi un output prima di fare il redirect, quindi dà problemi:
                      All'inizio del codice della pagina, proprio alla prima riga aggiungi:
                      [php]
                      <?php
                      ob_start("ob_gzhandler");
                      ?>
                      [/php]

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • H
                        hikari User Attivo • 17 lug 2012, 12:46 ultima modifica di

                        @Thedarkita said:

                        Per il redirect ho visto ora il problema, mandi un output prima di fare il redirect, quindi dà problemi:
                        All'inizio del codice della pagina, proprio alla prima riga aggiungi:
                        [php]
                        <?php
                        ob_start("ob_gzhandler");
                        ?>
                        [/php]

                        Ciao Thedark,
                        ti propongo per la beatificazione :yuppi:... adesso funziona!
                        Mi restava solo il problema n.2 (= non funziona con altro hosting), ma ho risolto anche quello: il provider mi ha risposto che nel piano hosting del cliente non è previsto PHP (è un piano "base che più base non si può"...).
                        Grazie ancora!!!!
                        Hikari

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • L
                          luis82 User Newbie • 10 ott 2012, 11:31 ultima modifica di

                          Ciao a tutti, utilissimo script ma avrei una richiesta:
                          è possibile inserire un modulo per la scelta del destinatario? Per intenderci qualcosa tipo questa: ```
                          htt*://biomol.altervista.org/contatti.html

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • K
                            kika7 User Newbie • 30 ott 2012, 12:37 ultima modifica di

                            Ciao a tutti,
                            ho provato ad inserire il form facendo esattamente tutto quanto descritto dal tutorial; sembra a posto, on line ho provato a compilarlo e mi esce il messaggio di invio corretto... ma poi nella casella di posta non arriva la mail (ho guardato anche nello spam: niente). Il mio è un indirizzo @libero.it - ma a quanto ho capito non dovrebbero esserci problemi se è una webmail, vero?
                            Grazie per l'aiuto!

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • S
                              spyro70 User • 26 dic 2012, 16:15 ultima modifica di

                              Salve gente, grazie per il vostro tutorial. Ho caricato le due pagine ma ottengo un errore:

                              ****Internal Server Error


                              The server encountered an internal error or misconfiguration and was unable to complete your request.
                              Please contact the server administrator at ********* to inform them of the time this error occurred, and the actions you performed just before this error.
                              More information about this error may be available in the server error log.

                              Mi sapete dire dove sta il problema?

                              Grazie

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • S
                                shine User Newbie • 24 apr 2013, 17:44 ultima modifica di

                                if ((trim($_POST['object']) != "") && (trim($_POST['body']) != "")) {
                                $to = "info@SERVER.it";
                                $headers = "From: " . $_POST['mail'] . "\n";

                                $subject = "Modulo proveniente da INDIRIZZOSERVER.it";

                                $body = "Contenuto del modulo:\n\n";

                                $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n";

                                $body .= "Oggetto: " . trim(stripslashes($_POST["object"])) . "\n";
                                $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n";

                                mail($to, $subject, $body, $headers);

                                echo "La mail è stata inviata con successo. Grazie per averci contattato";

                                } else {
                                echo "Deve compilare la form prima di inviare.";

                                }

                                ?>
                                </body>
                                MI DITE QUAL è IL PROBLEMA???????????? NN RICEVO LA MAIL

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • F
                                  francesco.di.caprio User Attivo • 24 apr 2013, 20:18 ultima modifica di

                                  Modifica la riga che tratta la funzione mail() in

                                  if (!mail($to, $subject, $body, $headers)) {
                                  echo "<h1>Errore durante la funzione mail()</h1>";
                                  exit();
                                  }

                                  e vedi se ti mostra l'output di errore.

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • S
                                    shine User Newbie • 25 apr 2013, 21:16 ultima modifica di

                                    grazie... risolto 😉

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • S
                                      shine User Newbie • 29 apr 2013, 14:25 ultima modifica di

                                      dopo aver creato il form di invio mail funzionante, ho un problemino... invio mail, ricevo mail inviata con successo. Se aggiorno la pagina invia nuovamente la mail... come posso risolvere????

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • F
                                        francesco.di.caprio User Attivo • 29 apr 2013, 14:45 ultima modifica di

                                        La dialog box di re-submit dei dati non puoi evitarla, a meno che non usi AJAX per trasferire i dati, ma puoi evitare che ti venga reinviata la email aggiungendo un controllo. Se il bottone che fa il submit è così definito:

                                        [html]
                                        <input type="submit" name="submit_mail" value="Invia">
                                        [/html]

                                        lato PHP, puoi mettere

                                        [php]
                                        if (isset($_POST["submit_mail"])) {
                                        // operazioni di invio della email
                                        }
                                        [/php]

                                        in modo che il codice si eseguirà solo se nella pagina precedente è stato cliccato il tasto submit_mail.

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • S
                                          shine User Newbie • 29 apr 2013, 15:05 ultima modifica di

                                          mmmm.. no così nn funziona... ho cmq il problema...
                                          quando invio la mail si dovrebbe resettare il form...

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • E
                                            ezechiele1954 User Newbie • 8 mag 2013, 16:26 ultima modifica di

                                            Salve, ho inserito il modulo in una pagina del mio sito e creato il file invio.php così come specificato, non ho fatto nessun cambiamento nel codice tranne quelli del nome sito e dell'indirizzo di posta, ma sia in locale che in remoto il modulo non invia messaggi, o almeno io non li ricevo, non da messaggi di conferma per l'invio tantomeno messaggi di errore se si lasciano i campi vuoti. L'unica cosa che fa è in locale di chiedere di salvare il file invio.php e in remoto di aprire la pagina invio.php completamente bianca. Immagino che mi sfugge qualcosa di essenziale non essendo molto pratico di programmazione. Potete aiutarmi?

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti