• User Newbie

    Come creare form iscrizione e collegarlo alla mail dreamweaver mx.

    ciao a tutti,

    Premetto che sono poco "preparato" in materia e avrei bisogno di un aiuto serio.

    Ho creato un sito (è ancora parecchio in costruzione) con Dreamweaver MX (peraltro in inglese e si capisce poco)...

    In pratica dovrei:

    • inserire un form semplicissimo (NOME:____________ EMAIL:___________)
    • un tasto (INVIA)
    • e ovviamente io specificherei poi a fianco le normative sulla privacy.
    • fare in modo che mi arrivi tutto via mail.

    Tutto qua.

    Il tutto sotto al logo.
    Ho provato e riprovato ma nulla...

    Vi prego, aiutatemi!


  • User

    Ciao, se ho capito bene quello che ti serve lo puoi realizzare attraverso un semplice codice php.

    Nella pagina html dove vorrai che stia il form dovrai inserire un codice di questo tipo:

    [HTML]
    <form method="post" action="inviamail.php">
    <div class="titolo_form">nome:</div> <div class="form"><input type="text" class="textform" maxlength="200" name="nome"/></div> <div class="titolo_form">e_mail:</div> <div class="form"><input type="text" class="textform" maxlength="200" name="e_mail"/></div> <div class="titolo_form">message:</div> <div class="form"><textarea class="c_textarea" name="testo" rows="xx" cols"yy"></textarea></div> <div class="form"><input type="submit" class="pulsante" name="inviadati" value="Submit"/></div> </form>
    [/HTML]

    Ora come vedi il metodo post fa riferimento al file php inviamail.php. In poche parole questo form invia i dati inseriti dall'utente a questo piccolo file che li elabora e li manda alla tua mail. Dunque nella stessa cartella della pagina html dovrai creare un file chiamato inviamail.php e inserire al suo interno un codice come questo:

    [PHP]<?php $nome = htmlspecialchars($_POST['nome']); $e_mail = htmlspecialchars($_POST['e_mail']); $testo = htmlspecialchars($_POST['testo']);
    //inserisci la tua mail
    $destinatario = "[email protected] [email protected]";
    //inserisci la mail del tuo sito, così il tuo provider mail non la considererà come spam
    $intestazione = "Da/From: [email protected] [email protected]\r\n"; $intestazione .= "Rispondi a/Reply to: [email protected] [email protected]\r\n";
    // qui puoi inserire l'oggetto delle mail che ti arriveranno
    $oggetto = "Mail dal sito";
    // un semplice layout del contenuto della mail che ti arriva
    $messaggio = "Nome: " . $nome . "\r\nE-mail: " . $e_mail . "\r\nMessaggio: " . $testo;
    //qui viene verificato l'invio della mail e l'utente visualizzerà la relativa pagina html
    if (!mail($destinatario, $oggetto, $messaggio, $intestazione)) { header("Location: errore.html"); } else { header("Location: inviato.html"); }; ?>[/PHP]

    Mi raccomando non dimenticarti di creare le pagine errore.html e inviato.html. Nel caso non volessi questa opzione basta che cancelli le relative righe di codice.

    Per modificarne l'aspetto puoi creare nel foglio di stile (.css) le classi div_form e text_form.

    Spero di non aver dimenticato nulla. Ho estrapolato il codice da un mio vecchio sito quindi potrebbe esserci qualche piccolo errore.
    Fammi sapere 😉 :gthi:


  • User Newbie

    grazie mille! provo e ti dico!


  • User

    Ti dico già che ho fatto un piccolo errore nelle ultime righe di spiegazione.
    Ecco corretto:
    Per modificarne l'aspetto puoi creare nel foglio di stile (.css) le classi titolo_form e form.


  • User Newbie

    Buongiorno, scusate volevo chiedere un informazione.. Avevo bisogno anche io del codice, però per un modulo d'iscrizione alla newsletter. Ho Personalizzato il codice in base ai miei moduli, però, facendo alcune prove, nella mail che mi arriva mancano tutti i dati, in pratica mi arriva così:
    Nome:
    Cognome:
    Mail:
    ...

    Sicuramente manca qualcosa nel codice php, che durante la personalizzazione è svanito! Per caso sapresti dirmi da cosa potrebbe dipendere?

    Grazie in anticipo