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. help form invio mail
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • marcocarrieri
      marcocarrieri ModSenior • ultima modifica di

      Allora $to prima di tutto è una variabile.
      Concettualmente visto anche il nome, sicuramente ci va la tua mail, ma attenzione a come gli assegni il valore...

      $to = $_POST['[email protected]'];

      Se fai cosi stai dicendo di assegnare alla variabile $to il valore di una variabile di tipo POST (mandata cioè dal form di prima) il cui nome/id è xxx @ gmail.com, invece credo che tu, almeno in questa variabile, gli debba assegnare una stringa diretta.

      $to = "[email protected]";

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • B
        beroz User • ultima modifica di

        oraq è rimasto un solo errore

        Notice: Undefined index: cognome in mailprova.php on line 16
        , ddd , From: dd <> Reply-To:dd

        grazie mille!

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • marcocarrieri
          marcocarrieri ModSenior • ultima modifica di

          Vero!
          E che lo avevo anche scritto nome/id mannaggia. 🙂

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • marcocarrieri
            marcocarrieri ModSenior • ultima modifica di

            Mi sa che si tratta dello stesso tipo di errore, il nome della variabile POST deve avere lo stesso nome del campo name...

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • B
              beroz User • ultima modifica di

              si, c era uno spazio di troppo.

              ora mi restituisce questo:

              , ddd , From: dd dd <> Reply-To:dd

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • marcocarrieri
                marcocarrieri ModSenior • ultima modifica di

                Se è quello che ti aspetti allora va bene.... 🙂
                Dipende da quello che hai scritto tu nei campi...

                Attenzione qua nel forum ad iniziare le frasi con le lettere maiuscole...

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • B
                  beroz User • ultima modifica di

                  quello che mi restituisce è ok
                  ma la mail non la invia.

                  e se volessi che mi restituisse messaggio inviato?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • B
                    beroz User • ultima modifica di

                    ho modificato lo script aggingendo un controllo di mail inviata o no

                    <?php

                    $to = "[email protected]";
                    $subject = "";
                    $email = $_POST['messaggio'];
                    $mailheaders = "From: " . $_POST['nome'] . " " . $_POST['cognome'] . " <> ";
                    $mailheaders .= "Reply-To:" . $_POST['email_mittente'] . " ";

                    if(mail($to, $subject, $email, $mailheaders)){
                    print "mail inviata";
                    }
                    else{
                    print "mail NON inviata!";
                    }
                    ?>

                    solo che non la invia.
                    cosa potrebbe essere?

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • marcocarrieri
                      marcocarrieri ModSenior • ultima modifica di

                      Qua nel forum per postare il codice usa l'apposito pulsante, cosi risulta tutto piu leggibile.

                      Da dove stai provando a fare questi test?
                      Da in locale?
                      Da un sito in internet?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • B
                        beroz User • ultima modifica di

                        certo, non mi ero accorto della sua esistenza.
                        lo sto provando da un server aruba.
                        ho provato a spedire una mail tramite il loro tool che fa vedere se il php.ini è configurato bene o meno e tutto funziona...
                        i file del form e dello script però non sono nella directory radice del sito.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • marcocarrieri
                          marcocarrieri ModSenior • ultima modifica di

                          Forse è sbagliata la sintassi che usi.

                          Tu usi questa.
                          mail($to, $subject, $email, $mailheaders)

                          Mentre la sintassi giusta dovrebbe essere questa

                          $headers = 'From: tuamail' . "\r\n" .
                              'X-Mailer: PHP/' . phpversion();
                          mail($to, $subject, $message, $headers);
                          
                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • B
                            beroz User • ultima modifica di

                            buongiorno!!!
                            ho modificato lo script in questo modo:

                            [PHP]
                            <?php

                            $to = "[email protected]";
                            $subject = "";
                            $email = $_POST['messaggio'];
                            $mailheaders = "From: " . $_POST['nome'] . " " . $_POST['cognome'] . " <> ";
                            $mailheaders .= "Reply-To:" . $_POST['email_mittente'] . " ";

                            if(
                            $headers = 'From: MAIL ' . "\r\n" .
                            'X-Mailer: PHP/' . phpversion();
                            mail($to, $subject, $message, $headers);
                            ){
                            print "mail inviata";
                            }
                            else{
                            print "mail NON inviata!";
                            }
                            ?>
                            [/PHP]

                            mi da questo errore:
                            Parse error: syntax error, unexpected ';' on line 23

                            poi non capisco questa riga di codice [PHP]$headers = 'From: MAIL ' . "\r\n" .[/PHP]
                            poi spiegarmela?

                            grazie mille

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • marcocarrieri
                              marcocarrieri ModSenior • ultima modifica di

                              Attenzione alle maiuscole qua nel Forum. 🙂
                              Purtroppo non vedo la riga 23... Ma credo si tratti dell'if...
                              Porta fuori l'assegnazione dell'header che alla fine è una stringa.

                              $headers = "From: MAIL \r\n X-Mailer: PHP/" . phpversion();

                              Dove al posto della parola mail metti la tua effettiva mail.

                              Questo dovrebbe far si che i sistemi antispam, buttino la mail generata da questa funzione nella cartella Spam.

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • M
                                memic4 User Attivo • ultima modifica di

                                Hai un errore nell'if..
                                Quello che hai inserito nell'if non è una condizione.

                                Fa cosi:
                                [php]
                                if( mail($to, $subject, $message, $headers) )
                                {
                                print "mail inviata";
                                }[/php]

                                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