+ Rispondi alla Discussione
Pagina 1 di 3 123 UltimaUltima
Risultati da 1 a 50 di 109

[Tutorial] Gestione di un form mail semplice

Ultimo Messaggio di Kingherat il:
  1. #1
    MZ è offline
    User L'avatar di MZ
    Data Registrazione
    Jun 2005
    Località
    Lecce-Torino
    Messaggi
    514

    [Tutorial] Gestione di un form mail semplice

    Invio mail da web form by pikadilly

    Lo script illustrato di seguito può essere utile a tutti coloro che hanno incontrato problemi con la creazione di un form per l'invio di mail

    Si tratta di uno script di base, ma utile per capire i meccanismi.
    Da questo punto in poi la parola a pikadilly che mi ha gentilmente inviato lo script e la sua descrizione.

    "La domanda che spesso viene fatta è: "come faccio ad inviare un modulo

    dalla mia pagina web alla mia mail?", le risposte prevedono sempre la comparsa della parola "programmazione". Di seguito vedremo un semplice script che permette di inviare una mail dal nostro sito alla nostra casella e-mail, funziona anche se la casella di posta è una webmail.
    Anzitutto abbiamo due pagine che chiameremo:


    "modulo.html"
    "invio.php"

    modulo.html conterrà la form in cui si inseriranno di dati, per esempio:

    -E-mail
    -Oggetto
    -Messaggio


    Per ogni campo sopracitato si deve sapere il nome, name, tipo, type, e id, che rimane id.
    quindi il codice sarà così ad esempio per l'oggetto della mail.

    <input name="object" type="text" id="object" />

    Vediamo la form nella pagina modulo.html nell'insieme:


    Codice PHP:
    <form action="invio.php" method="post" id="modulo">
     <
    table>
      <
    tr>
      <
    td>Il Suo indirizzo e-mail*</td>
       <
    td><label>
      <
    input name="mail" type="text" id="mail" />
      </
    label></td>
      </
    tr>
      <
    tr>
      <
    td>Oggetto*</td>
      <
    td><label>
      <
    input name="object" type="text" id="object" />
      </
    label></td>
      </
    tr>
      <
    tr>
       <
    td>Messaggio*</td>
       <
    td>
       <
    textarea name="body" cols="30" rows="5" id="body"></textarea>
      </
    td>
      </
    tr>
      <
    tr>
      <
    td><label></label>
      </
    td>
      <
    td><label>
    <
    input type="submit" name="submit" id="submit" value="Invia" /> <input type="reset" name="cancella" id="cancella" value="Ripristina" />
      </
    label></td>
      </
    tr>
      </
    table>
      </
    form
    Ogni campo di testo ha un suo id che verrà trasmesso alla pagina invio.php che processerà il tutto e spedirà i risultati all'indirizzo mail che andremo a specificare in seguito.
    Come si può notare, all'apertura del tag <form> è stato aggiunto:
    action="invio.php" method="post"
    "Action" determina l'azione, ovvero invia ad invio.php tutto quello contenuto nel modulo, "post" indica invece il metodo.

    Passiamo alla pagina invio.php
    In invio.php ponete questo codice tra i tag body:

    Codice PHP:
    <?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 "      \n nome@dominio.it      Indirizzo e-mail protetto dal bots spam , deve abilitare Javascript per vederlo    ";
    $headers "From: " $_POST['mail'] . "\n";
      
    // soggetto della mail
      
    $subject "Modulo proveniente da www.tuosito.it";
      
      
    // 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 .= "Oggetto: " 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...
      
      
    echo "La mail è stata inviata con successo. Grazie per averci contattato";
      
      } else {
    // altrimenti
      
    echo "Deve compilare la form prima di inviare.";
      
      }
      
      
    ?>
    Inserendo questo codice nella pagina invio.php e settando la vostra mail al posto di " nome@dominio.it" riceverete una mail dalla vostra web form.

    Una cosa fondamentale è la codifica dei caratteri.
    Per ricevere una mail priva di lettere strane tipo questa "è" o apostrofi preceduti da " \" è necessario che la codifica dei caratteri nei metatag sia impostata così:

    Codice PHP:
     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
    Alcuni programmi di defaultl mettono:


    Codice PHP:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />. 


    Grazie pikadilly
    File Allegati File Allegati

  2. #2
    Esperta L'avatar di pikadilly
    Data Registrazione
    Dec 2006
    Località
    Old City
    Messaggi
    7,256
    Segui pikadilly su Twitter Aggiungi pikadilly su Google+ Aggiungi pikadilly su Facebook
    Io invece ringrazio Gmassi e Adriano_Bari per avermi aiutato a risolvere il problema degli accenti e degli apostrofi nelle mail che si ricevono dalla web form.
    Grazie Mz per l'inserimento

  3. #3
    User Newbie
    Data Registrazione
    Jan 2008
    Messaggi
    2

    non ho grandi conoscenze

    ma cerchero' di contribuire con piccole cose...ciao

  4. #4
    User Newbie
    Data Registrazione
    Jan 2008
    Messaggi
    2
    scusate l'ignoranza sono nuova.... ma tutto questo script lo si incolla in un' unica pagina semplice di html ?

  5. #5
    Esperta L'avatar di pikadilly
    Data Registrazione
    Dec 2006
    Località
    Old City
    Messaggi
    7,256
    Segui pikadilly su Twitter Aggiungi pikadilly su Google+ Aggiungi pikadilly su Facebook
    Ciao Raffa,
    la pagina che contiene il form può anche essere una semplice pagina html ma la seconda (invio.php) deve essere .php.

    Tu inserisci tutto il codice php nella pagina .php (scusa le ripetizioni).


  6. #6
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    problema form....SEMPRE

    Ciao, non riesco a far funzionare il mio form,, credo che c'è qualche problema su su invio.php?
    prima dell'indirizzo email c'è una n...
    quando provo a inviare i dati dice invio dati riuscito ma non mi arriva nessuna e-mail.......

    <?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 = " \n E-MAIL MIO SITO.net Indirizzo e-mail protetto dal bots spam , deve abilitare Javascript per vederlo ";
    $headers = "From: " . $_POST['mail'] . "\n";
    // soggetto della mail
    $subject = "Modulo proveniente da NOME MIO SITO.net";

    // 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 .= "Oggetto: " . 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...

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

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

    }

    ?>
    </body>
    </html>

  7. #7
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    798
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    lo utilizzi in localhost?

    magari non hai il client smtp attivo

    prova in remoto
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  8. #8
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201
    ho caricato i files su internet e da internet che faccio la prova

  9. #9
    Esperta L'avatar di pikadilly
    Data Registrazione
    Dec 2006
    Località
    Old City
    Messaggi
    7,256
    Segui pikadilly su Twitter Aggiungi pikadilly su Google+ Aggiungi pikadilly su Facebook
    Ho capito il problema...forse...
    Hai scaricato lo zip o hai copiato e incollato quello scritto nel primo thread?

    Probabilmente, se hai copiato e incollato il primo post del thread hai copiato anche questa dicitura:
    Indirizzo e-mail protetto dal bots spam
    che si trova accanto a l'indirizzo e-mail.

    Togli quella frase che non fa parte dello script e riprova, facci sapere.


  10. #10
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    Siiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii :-)

    GRAZIEEEEEEEEE FUNZIONAAAAAAAAAA

    CIAO..

  11. #11
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    problema form...ennesimo

    Il form funziona, ho aggiunto altri cmpi coma nome e cognome, ma quando leggo la e-mail nn si vedono i nuovi campi... eppure ci sono gli id ..... ho aggiunto questo: ma nn arriva, ho cantato vittoria troppo presto

    <tr>
    <td><strong>Nome*</strong></td>
    <td><label>
    <input name="nome" type="text" id="nome" size="100" />
    </label></td>
    </tr>
    <tr>
    <td><strong>Cognome*</strong></td>
    <td><label>
    <input name="cognome" type="text" id="cognome" size="100" />
    </label></td>
    </tr>

  12. #12
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    Sono Arrivato Alla Soluzione

    ALLA FINE HO CAPITO CHE DOVEVO MODIFICARE ANCHE IL FILE .PHP E FUNZIONA... ora una cosa vorrei fare ancora, a far scrivere obbligatoriamente ttt i dati.... cm si fa?

  13. #13
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    Incredibile!!!!! :-)

    SONO RIUSCITO ANCHE A RENDERE OBBLIGATORIO TUTTI I CAMPI..... VI RINGRAZIO ANCORA TUTTI, PERCHE' SENZA DI VOI NN CE LA POTEVO MAI FARE... GRAZIE DAVVERO!

  14. #14
    Esperta L'avatar di pikadilly
    Data Registrazione
    Dec 2006
    Località
    Old City
    Messaggi
    7,256
    Segui pikadilly su Twitter Aggiungi pikadilly su Google+ Aggiungi pikadilly su Facebook
    Bene,
    in ogni caso nei thread utili c'era anche lo script su come fare una form mail con campi obbligatori.

    http://www.giorgiotave.it/forum/php-mysql/58050-esempio-form-per-invio-mail-con-controllo.html

  15. #15
    Utente Premium L'avatar di Davide-Al
    Data Registrazione
    Nov 2007
    Messaggi
    201

    Form - Autenticazione

    Grazie Pikaciu! adesso però, avrei un'altro problemino............. , siccome sono un webmaster in via di estinzione, che nn conoscono in dettaglio la programmazione......... mi aiuteresti a creare una pagina dove un utente ci si può iscrivere avere subito una risposta via e-mail du benvenuto.. e se conosci qualcs di più professionale e carino possibile?

    Grazie di cuore.
    Davide smack

  16. #16
    Esperta L'avatar di pikadilly
    Data Registrazione
    Dec 2006
    Località
    Old City
    Messaggi
    7,256
    Segui pikadilly su Twitter Aggiungi pikadilly su Google+ Aggiungi pikadilly su Facebook
    Allora siamo colleghi di sventura.
    Purtroppo io non mi occupo di programmazione, ogni tanto provo a montare, degli script per le form mail e vengono fuori cose che funzionano.
    Non saprei proprio come aiutarti. Probabilmente se apri un discorso a tema o fai una piccola ricerca nel forum php qualcosa puoi anche trovare.
    Buon lavoro

  17. #17
    User Newbie
    Data Registrazione
    Mar 2009
    Messaggi
    4
    ciao ragazzi,
    il post è vecchio ma ho un problema.

    Non sono molto esperto di programmazione (me la cavo) ho fatto un sito internet e volevo inserirci una pagina di commenti per poi riceverli sulla mail.

    Ho usato i 2 documenti (html e php) messi a disposizione nella prima spiegazione e HO MODIFICATO SOLO LA MAIL METTENDO LA MIA MAIL DI HOTMAIL.

    Per fare una prova creo una pagina vuota scrivo ''valutazioni'' e lo collego ipertesto sulla pagina html.

    - Carico la pagina vuota, il file html e il file php sul sito;
    - Vado sul sito da web premo valutazioni mi apre la pagina impostata in html;
    - Compilo premo invia e mi dice errore visualizzazione pagina.

    Io da i 2 files scaricati non ho modificato nulla (solo la mail) ho lasciato le scritte che stavano in arancione.

    Vi prego aiutatemi che ne ho urgente bisogno.

  18. #18
    Utente Premium
    Data Registrazione
    May 2009
    Messaggi
    146
    Salve, il codice funziona perfettamente, volevo sapere c'è un modo per inserire altre opzioni oltre a messaggio, oggetto e email?

  19. #19
    Consiglio Direttivo L'avatar di Samyorn
    Data Registrazione
    Dec 2007
    Località
    Catania
    Messaggi
    6,000
    Segui Samyorn su Twitter Aggiungi Samyorn su Google+ Aggiungi Samyorn su Facebook Aggiungi Samyorn su Linkedin
    Ciao zaghor82, cosa intendi per altre opzioni?
    MODFunzioni di PHP Qui, Quo, Qua
    Si parla poco di SMF? Sentiamo l'opinione di chi lo ha provato. Ti amo...brindiAMO?

  20. #20
    Utente Premium
    Data Registrazione
    May 2009
    Messaggi
    146
    Ragazzi apposto ho già risolto, grazie.

  21. #21
    Utente Premium
    Data Registrazione
    Oct 2008
    Messaggi
    255
    Io ho scaricato il file .zip,
    ho messo il form nella mia pagina ho settato la mia mail e l'ho posizionato tramite l'id modulo.

    Quando però provo ad inviare la mail mi dà errore:

    " File non trovato

    Firefox non trova il file /C:/Documents and Settings/Luca/Desktop/PORTFOLIO/invio.php.


    * Verificare che il nome del file non contenga maiuscole o errori di battitura.

    * Verificare se il file è stato spostato, rinominato o rimosso."

  22. #22
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao lucaeffe,

    Lo script lo devi testare su un server, oppure installi un server locale per provare.

  23. #23
    Utente Premium
    Data Registrazione
    Oct 2008
    Messaggi
    255
    Scusami ma sto imparando,
    che significa che và testato su un server?

  24. #24
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Che dei passare i file sul tuo hosting e provarlo la.
    Altrimenti installi in locale apache,php e mysql e provi in locale.
    Puoi utilizzare dei pacchetti già pronti come xampp o appserver, epr testare in locale, devi mettere i tuoi script php nella cartella di apache.
    Ed i file vanno richiamati dal browser all'url localhost, in modo che vengano elaborati dal server locale.
    L'inivio di email dal server locale comporta di dover modificare alcuni parametri, quindi essendo ancora tu agli inizii, ti conviene provare direttamente online passando i file in FTP.

  25. #25
    Utente Premium
    Data Registrazione
    Oct 2008
    Messaggi
    255
    Ho capito allora mi conviene aspettare di mettere on-line il mio sito.

    Per personalizzare il form come bisogna comportarsi,
    Bisogna agire direttamente sui vari id?

    Per aggiungere altre stringhe oltre mail e oggetto come si fa?

    Scusa la marea di domande!

  26. #26
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Devi aggiungere al file html altri input, modificando nomeinput:
    Codice PHP:
    <input name="NOMEINPUT" type="text" id="NOMEINPUT" /> 
    E nel file php aggiungere sotto a:
    Codice PHP:
    $body .= "testo: " trim(stripslashes($_POST["body"])) . "\n"//messaggio 
    Questo per ogni input che aggiungi
    Codice PHP:
     $body .= "altro: " trim(stripslashes($_POST["NOMEINPUT"])) . "\n"//NOMEINPUT 

  27. #27
    Utente Premium
    Data Registrazione
    Oct 2008
    Messaggi
    255
    Ok!
    Grazie mille! :-)

    Ora mi è venuta la curiosità di provare MySQL che a quanto ho capito serve per farti testare la tua pagina come se fosse in linea..giusto?

    Sono sul sito ma a quanto vedo bisogna pagare per scaricarlo?

  28. #28
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Mysql è gratuito. Ma in questo caso non ti serve.
    Ti consiglio di scaricare xampp, cosi ti risparmi di doverti configurare tutto.

  29. #29
    User Newbie
    Data Registrazione
    Aug 2009
    Messaggi
    7
    CIAO
    ho provato ha modificare sia il codice html che quello php, riesco a far partire correttamente la mail che pero arriva tutta erra ossia non rispetta il semplice output che vorrei ricevere ma in realta arriva una mail lunghissima con tutti i dati a casaccio a aprte la prima riga della tabella
    potete dare un occhio a dove ho sbagliato qualcosa?

    Codice HTML:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html><head><title>modulo2</title></head>
    <body>
    <div style="text-align: center;">
    <form action="invio2.php" method="post" id="modulo2">
    <div style="text-align: center;"></div>
    <table style="text-align: left; margin-left: auto; margin-right: auto; height: 254px; width: 811px;">
    <tbody>
    <tr>
    <td style="font-family: Arial; font-weight: bold; width: 162px;">nome
    della squadra</td>
    <td colspan="3" rowspan="1" style="width: 206px;"><label> <input name="mail" id="squadra"> </label></td>
    </tr>
    <tr>
    <td style="width: 206px;" colspan="1" rowspan="1"></td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;" colspan="1">vende</td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;" colspan="1">offre</td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;">prezzo</td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">portiere</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="portiere" id="portiere" type="text"> </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="portiere1" id="portiere1"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="prezzopo" id="prezzopo"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">1
    difensore</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca02" id="gioca02">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca02n" id="gioca02n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca02" id="gioca02"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">2
    difensore</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca03" id="gioca03" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca03n" id="gioca03n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca03" id="pgioca03"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">1
    c.campista</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca04" id="gioca04" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca04n" id="gioca04n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca04" id="pgioca04"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">2
    c.campista</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca05" id="gioca05" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca05n" id="gioca05n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca05" id="pgioca05"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">attaccante</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca06" id="gioca06">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca06n" id="gioca06n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca06" id="pgioca06"> </label></td>
    </tr>
    <tr>
    <td style="width: 162px;"><label></label>
    </td>
    <td style="width: 200px;"><label><input name="submit" id="submit" value="Invia" type="submit"> <input name="cancella" id="cancella" value="Ripristina" type="reset">
    </label></td>
    <td style="width: 200px;"></td>
    <td style="width: 206px;"></td>
    </tr>
    </tbody>
    </table>
    </form>
    </div>
    </body>
    </html>
    Codice PHP:
    <?php
    if (trim($_POST['mail']) != "") { 
     
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo 
      
    $to "      \n INDIRIZZO DI POSTA ";
    $headers "From: " $_POST['mail'] . "\n";
      
    // soggetto della mail
      
    $subject " mercato ";
      
      
    // 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 .= " portiere " trim(stripslashes($_POST["portiere"])) . " portiere 1" trim(stripslashes($_POST["portiere1"])) ." prezzo " trim(stripslashes($_POST["prezzopo"])) ."\n"//oggetto del messaggio
    $body .= " difensore " trim(stripslashes($_POST["gioca02"])) . $body .= " difensore 1 " trim(stripslashes($_POST["gioca02n"])) .$body .= " prezzo " trim(stripslashes($_POST["pgioca02"])) . "\n"//oggetto del messaggio
    $body .= " difensore " trim(stripslashes($_POST["gioca03"])) . $body .= " difensore 1 " trim(stripslashes($_POST["gioca03n"])) .$body .= " prezzo " trim(stripslashes($_POST["pgioca03"])) . "\n"//oggetto del messaggio
    $body .= " c.campista " trim(stripslashes($_POST["gioca04"])) . $body .= " c.campista" trim(stripslashes($_POST["gioca04n"])) .$body .= " prezzo " trim(stripslashes($_POST["pgioca04"])) . "\n"//oggetto del messaggio
    $body .= " c.campista " trim(stripslashes($_POST["gioca05"])) . $body .= " c.campista" trim(stripslashes($_POST["gioca05n"])) .$body .= " prezzo " trim(stripslashes($_POST["pgioca05"])) . "\n"//oggetto del messaggio
    $body .= " attaccante " trim(stripslashes($_POST["gioca06"])) . $body .= " attaccante" trim(stripslashes($_POST["gioca06n"])) .$body .= " prezzo " trim(stripslashes($_POST["pgioca06"])) . "\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...
      
      
    echo "La mail è stata inviata con successo. Bene";
      
      } else {
    // altrimenti
      
    echo "Devi compilare la form prima di inviare.";
      
      }
      
      
    ?>
    Ultima modifica di Leonov; 06-08-09 alle 10:13 Motivo: Modificato i tag "code" per evidenziare la sintassi. ;-)

  30. #30
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao accio1985,

    Non ho capito qual'è il problema che riscontri.

  31. #31
    User Newbie
    Data Registrazione
    Aug 2009
    Messaggi
    7
    Citazione Originariamente Scritto da Thedarkita Visualizza Messaggio
    Ciao accio1985,

    Non ho capito qual'è il problema che riscontri.
    La mail parte correttamente ma arrivano in maniera molto csasuale molti piu dati ossia gtli stessi dati arrivano in una mail lunghissuma impaginata in maniera del tutto casuale.
    A me basta riportare i dati cosi come nel form di inserimento.
    Ultima modifica di Leonov; 07-08-09 alle 11:29 Motivo: Maiuscole.

  32. #32
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Prova cosi:
    Codice PHP:
    <?php
    if (trim($_POST['mail']) != "") { 
     
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo 
      
    $to "      \n INDIRIZZO DI POSTA ";
    $headers "From: " $_POST['mail'] . "\n";
      
    // soggetto della mail
      
    $subject " mercato ";
      
      
    // 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 .= " portiere " trim(stripslashes($_POST["portiere"])) . " portiere 1" trim(stripslashes($_POST["portiere1"])) ." prezzo " trim(stripslashes($_POST["prezzopo"])) ."\n"//oggetto del messaggio
    $body .= " difensore " trim(stripslashes($_POST["gioca02"]))." difensore 1 " trim(stripslashes($_POST["gioca02n"]))." prezzo " trim(stripslashes($_POST["pgioca02"])) . "\n"//oggetto del messaggio
    $body .= " difensore " trim(stripslashes($_POST["gioca03"]))." difensore 1 " trim(stripslashes($_POST["gioca03n"]))." prezzo " trim(stripslashes($_POST["pgioca03"])) . "\n"//oggetto del messaggio
    $body .= " c.campista " trim(stripslashes($_POST["gioca04"]))." c.campista" trim(stripslashes($_POST["gioca04n"]))." prezzo " trim(stripslashes($_POST["pgioca04"])) . "\n"//oggetto del messaggio
    $body .= " c.campista " trim(stripslashes($_POST["gioca05"]))." c.campista" trim(stripslashes($_POST["gioca05n"]))." prezzo " trim(stripslashes($_POST["pgioca05"])) . "\n"//oggetto del messaggio
    $body .= " attaccante " trim(stripslashes($_POST["gioca06"]))." attaccante" trim(stripslashes($_POST["gioca06n"]))." prezzo " trim(stripslashes($_POST["pgioca06"])) . "\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...
      
      
    echo "La mail è stata inviata con successo. Bene";
      
      } else {
    // altrimenti
      
    echo "Devi compilare la form prima di inviare.";
      
      }
      
      
    ?>

  33. #33
    User Newbie
    Data Registrazione
    Aug 2009
    Messaggi
    7
    Edit: tutto risolto, grazie per l'aiuto non ci sarei riuscito!

    P.S. c'è un metodo per far apparire nella mail in grassetto i dati inseriti nei campi del form e lasciare testo normale quelli descrittivi?
    Ultima modifica di Leonov; 07-08-09 alle 18:10 Motivo: Maiuscole. :-)

  34. #34
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Aggiungi agli header dell'email che è l'email è in formato html, e metti i tag html per farlo in grassetto.

  35. #35
    User Newbie
    Data Registrazione
    Sep 2009
    Messaggi
    1
    Grazieeeeeeeeeeeeeeeeeeeeeeeeeee!!!!
    Ultima modifica di Samyorn; 29-09-09 alle 20:42 Motivo: Curare l'uso delle maiuscole. ;)

  36. #36
    User Newbie
    Data Registrazione
    Aug 2009
    Messaggi
    7
    Scusa ma non ho capito:
    dovrei modificare il codice del file php? e come dovrei farlo?
    Vorrei ricevere in grassetto il contenuto delle celle del modulo.
    Grazie

  37. #37
    User Newbie
    Data Registrazione
    Oct 2009
    Messaggi
    5
    Ciao,
    questo form mi è stato utile, sul primo sito dove l'ho riprodotto funziona benissimo, poi ho provato a farne uno uguale identico in un'altro sito e improvvisamente non funziona più ho copiato e in collato il codice ho tenuto gli stessi nomi dei campi e tutto ho cambiato solo la mail solo che non funziona potete aiutarmi?
    Ultima modifica di Leonov; 08-10-09 alle 22:18 Motivo: Maiuscola.

  38. #38
    Consiglio Direttivo L'avatar di Samyorn
    Data Registrazione
    Dec 2007
    Località
    Catania
    Messaggi
    6,000
    Segui Samyorn su Twitter Aggiungi Samyorn su Google+ Aggiungi Samyorn su Facebook Aggiungi Samyorn su Linkedin
    Ciao sbabe e benvenuto nel forum GT.

    Certo che i nomi dei file siano giusti ed anche i percorsi?

    Nel caso prova a postare il codice e vediamo dove potrebbe essere il problema.
    MODFunzioni di PHP Qui, Quo, Qua
    Si parla poco di SMF? Sentiamo l'opinione di chi lo ha provato. Ti amo...brindiAMO?

  39. #39
    User Newbie
    Data Registrazione
    Oct 2009
    Messaggi
    5
    Ok questa è la parte di html

    Codice HTML:
    <form action="messaggio.php" method="post" id="modulo">
    
    Il Suo indirizzo e-mail*<br />
    <label>
     <p> <input name="mail" type="text" id="mail" /><br /></p>
      </label>
      
    
    Messaggio* <br />
    
       <p><textarea name="body" cols="30" rows="5" id="body"></textarea> <br /></p>
    
    
    <label>
    <input type="submit" name="submit" id="submit" value="Invia" /> </label>
     
    </form>
    Mentre questa è la parte di php

    Codice PHP:
    <?php
      
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo 
     
    if ((trim($_POST['mail']) != "") && (trim($_POST['body']) != "")) {    //questo fa si che se i campi "oggetto" e "messaggio" sono vuoti la form non invia nessuna mail
      
    $to "mail@alice.it";
    $headers "From: " $_POST['mail'] . "\n";
     
      
      
    // corpo messaggio
      
    $body "Messaggio dal sito:\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 .= "testo: " trim(stripslashes($_POST["body"])) . "\n"//messaggio
      
      
      // invio mail
      
    mail($to$subject$body$headers); // SE L'INOLTRO E' ANDATO A BUON FINE...
      
      
    echo "<center>La mail è stata inviata con successo. Grazie per averci contattato</center>";
      
      } else {
    // altrimenti
      
    echo "<center>Deve compilare la form prima di inviare.</center>";
      
      }
      
      
    ?>
    Comunque penso di aver sbagliato qualcosa nel php solo che non capisco cos'è se potete aiutarmi mi fate un favore grazie.
    Ultima modifica di Samyorn; 16-10-09 alle 20:46 Motivo: Curare l'uso delle maiuscole a inizio frase e la punteggiatura. ;)

  40. #40
    Consiglio Direttivo L'avatar di Samyorn
    Data Registrazione
    Dec 2007
    Località
    Catania
    Messaggi
    6,000
    Segui Samyorn su Twitter Aggiungi Samyorn su Google+ Aggiungi Samyorn su Facebook Aggiungi Samyorn su Linkedin
    Vedo che manca l'oggetto della mail, intanto modifica il file messaggio.php così:
    Codice PHP:
    <?php

     
    if ((trim($_POST['mail']) != "") && (trim($_POST['body']) != "")) {
    $to "mail@email.ext";
    $headers "From: " $_POST['mail'] . "\r\n";
    $subject "Oggetto della mail";
      
    // corpo messaggio
    $body "Messaggio dal sito:\n\n";
      
    $body .= "Inviata da: " trim(stripslashes($_POST["mail"])) . "\n"
      
    $body .= "testo: " trim(stripslashes($_POST["body"])) . "\n"//messaggio
      
      

      
    mail($to$subject$body$headers);
      
      echo 
    "<center>La mail è stata inviata con successo. Grazie per averci contattato</center>";
      
      } else {
    // altrimenti
      
    echo "<center>Deve compilare la form prima di inviare.</center>";
      
      }
      
      
    ?>
    Dato che usi una casella alice ti consiglio di controllare la casella dalla webmail e controllare la cartella posta indesiderata, probabile che viene considerata spam e che non te la fa scaricare dal client.
    MODFunzioni di PHP Qui, Quo, Qua
    Si parla poco di SMF? Sentiamo l'opinione di chi lo ha provato. Ti amo...brindiAMO?

  41. #41
    User Newbie
    Data Registrazione
    Oct 2009
    Messaggi
    5
    L'oggetto non c'è perché non ho messo il campo oggetto va messo lo stesso?
    Ultima modifica di Leonov; 19-10-09 alle 12:30 Motivo: Per favore, iniziare le frasi con la lettera maiuscola.

  42. #42
    User Newbie
    Data Registrazione
    Oct 2009
    Messaggi
    5
    Niente ho provato ad aggiungere il subject però quanndo clicco su invia mi viene fuori una pagina bianca non mi viene fuori il messaggio di errore
    Ultima modifica di Leonov; 19-10-09 alle 12:31 Motivo: Per favore, iniziare le frasi con la lettera maiuscola.

  43. #43
    User
    Data Registrazione
    Oct 2008
    Messaggi
    14

    redirect ed azzera dati

    Dopo tre anni dall'apertura di questo post, sono qui a parlare di questo form contatti molto utile, perchè lo sto utilizzando sul mio sito.
    Veniamo al problema: lo script va alla grande, ricevo le mail, ed ho aggiunto altri elementi a quelli presenti nello script (menu a tendina e checkbox) che funzionano.
    Allora che vuoi? Direte voi
    Volevo migliorarlo, aggiungendovi un redirect ad una pagina del sito, qualche secondo dopo aver visualizzato il messaggio di avvenuto inoltro dei dati. Preferibilmente questa pagina potrebbe essere sempre quella dei contatti, però con i dati azzerati.
    Il problema è che non ne capisco molto di php...
    Che ne pensate?
    Chissà se ci sarà qualcuno che leggerà questo msg dopo così tanto tempo...
    spero di si .

    Cmq grazie a pickadilly e a tutti, siete fantastici

    BluesMan

  44. #44
    User
    Data Registrazione
    Oct 2008
    Messaggi
    14

    ho risolto :)

    Credo di aver risolto.
    Per chi avesse bisogno:

    è 1 redirect interno al sito che avviene dopo 3 secondi
    ho inserito nell'<head> della pagina invio.php questa stringa:

    <meta http-equiv="refresh" content="3;URL=pagina.html" />

    ciao a tutti.

    BluesMan

  45. #45
    User
    Data Registrazione
    Mar 2009
    Messaggi
    47

    Redirect

    Citazione Originariamente Scritto da BluesMan Visualizza Messaggio
    Credo di aver risolto.
    Per chi avesse bisogno:

    è 1 redirect interno al sito che avviene dopo 3 secondi
    ho inserito nell'<head> della pagina invio.php questa stringa:

    <meta http-equiv="refresh" content="3;URL=pagina.html" />

    ciao a tutti.

    BluesMan
    Secondo me non ti conviene molto perchè se uno si addormenta mentre scrive sulla tastiera proprio all'ultimo textinput gli si ricarica la pagina e perde tutte le info...

  46. #46
    User
    Data Registrazione
    Oct 2008
    Messaggi
    14

    in effetti...

    Si in effetti, come metodo è 1 po drastico, però è sempre meglio della pagina di "messaggio inoltrato" statico, che ti costringe a tornare indietro manualmente.
    Comunque, accetto qualsiasi seggerimento .
    Hai qualche idea?

    Ciao
    BluesMan

  47. #47
    User Newbie
    Data Registrazione
    Sep 2010
    Messaggi
    1
    Ragazzi avrei bisogno di una mano!
    Ho utilizzato lo script da voi proposto. La mail la invia, ma quando la ricevo tutti i campi sono vuoti (ovvero "")! Ho tolto l'if iniziale (farò dopo una validazione lato client) altrimenti mi andava subito nel ramo else. Secondo voi da cosa può dipendere?

  48. #48
    User Newbie
    Data Registrazione
    Dec 2010
    Località
    Milano
    Messaggi
    4
    Ciao! Io sto provando ad usare il form che c'è nella prima pagina di questo post e funziona tutto alla grande.
    Vorrei solo sapere come faccio a far si che oltre all'indirizzo che ho messo nel campo "$to=", arrivi una mail anche all'indirizzo di chi si registra.
    Ho provato a scrivere "$to= $mail;" ma non va...

    Mi potete aiutare?

  49. #49
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,268
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Devi ripetere l'istruzione mail 2 volte e impostare come destinatario di una delle 2 l'indirizzo del mittente.

  50. #50
    User Newbie
    Data Registrazione
    Dec 2010
    Località
    Milano
    Messaggi
    4
    Accidenti che velocità! Grazie per la risposta.
    Scusa ma non ho capito, io ho scritto:

    $to = " nome@email.it, $mail ";

    e vorrei che in automatico recuperasse l'indirizzo email che chi si iscrive ha scritto nel campo "mail" e gli mandasse pure a lui un'email come quella che ricevo io, è possibile?

    Grazie ancora.

+ Rispondi alla Discussione
Pagina 1 di 3 123 UltimaUltima

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.