• User Newbie

    invio link tramite mail form

    Finalmente (dopo una settimana di lavoro) sono riuscita ad inviare (a chi interessato) dal mio sito in html un link che riporta ad una pagina con una mia card. Il problema adesso consiste nel fatto che nella mail che mi arriva c'è un messaggio predefinito, ma io vorrei dare la possibilità al mittente di scrivere un msg personale.
    Scrivo il codice in html:
    <form action="sendMail2.php" method="post" class="Stile2">
    <p><span class="Stile11">Il tuo nome</span><br />
    <input name="nomemittente" type="text" size="50" />
    <br />
    <span class="Stile11">Il tuo indirizzo e-mail</span><br />
    <input name="emailmittente" type="text" size="50" />
    <br />
    <span class="Stile11">Il nome dell'amico</span><br />
    <input name="nomedestinatario" type="text" size="50" />
    <br />
    <span class="Stile11">L'indirizzo e-mail dell'amico</span><br />
    <input name="emaildestinatario" type="text" size="50" />
    <p><br />

    <p>
    <img src='invia.png' width="67" height="54" />
    <input name="submit" type="submit" class="Stile8" value="Invia la card" />

    <input type="reset" class="Stile8" value="Cancella" />
    </form>

    e quello in PHP:
    <?PHP
    // Processo di recupero dei dati
    $nomemittente = $_POST['nomemittente'];
    $emailmittente = $_POST['emailmittente'];
    $nomedestinatario = $_POST['nomedestinatario'];
    $emaildestinatario = $_POST['emaildestinatario'];
    $comments=$_POST['comments'];
    // Configuro il testo del messaggio che apparirà all'amico
    $messaggio = "Ciao $nomedestinatario, ricevi questa mail perchè $nomemittente ti
    ha inviato una E-card <a
    href=http://www.alibrange.blogspot.com>http://www.alibrange.blogspot.com</a>";
    // Processo di controllo [Opzionale]
    if ($nomemittente==null)
    {
    echo ("Errore: compilare il campo 'Il tuo nome'");
    }
    else
    {
    if ($emailmittente==null)
    {
    echo ("Errore: compilare il campo 'Il tuo indirizzo e-mail'");
    }
    else
    {
    if ($nomedestinatario==null)
    {
    echo ("Errore: compilare il campo 'Il nome dell'amico'");
    }
    else
    {
    if ($emaildestinatario==null)
    {
    echo ("Errore: compilare il campo 'Indirizzo e-mail dell'amico'");
    }
    else
    {
    // Processo di configurazione dell'email
    // [Destinatario, mittente, ecc]
    $mail_to = $emaildestinatario;
    $mail_from = $emailmittente;
    $mail_subject = "$nomemittente ti invia una E-card da E-card da Alibrange";
    $mail_comments =
    $mail_body = "<p><font color=#000000>$messaggio</font></p>";
    // Intestazioni HTML
    $mail_in_html = "MIME-Version: 1.0\r\n";
    $mail_in_html .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $mail_in_html .= "From: <$mail_from>";
    // Processo di invio
    if (mail($mail_to, $mail_subject, $mail_body, $mail_in_html))
    {
    echo ("E-mail inviata con successo");
    }
    else
    {
    echo ("Errore interno durante l'invio...");
    }
    }
    }
    }
    }
    ?>

    come aggiungere sia al codice html che a quello in PHP una texarea per il messaggio personalizzabile e come modificare i due codici affinché non mi appaia questo msg "Ciao f, ricevi questa mail perchè g ti ha inviato una E-card http: // www.alibrange.blogspot.com"?
    vi ringrazio...


  • User Attivo

    Ciao tisirbes,

    dal regolamento di sezione abbiamo:

    Se secondo voi è necessario, postate il pezzo di codice interessato. **NON POSTATE TUTTO LO SCRIPT. **

    dal regolamento generale abbiamo:

    5.0. NON sono graditi link attivi specialmente a siti propri (salvo nelle Aree Annunci), anche quando approfondiscono l'argomento in modo unico ed originale.
    In questi casi è consigliato riportare l'Url della risorsa NON attivo.

    Nel futuro cerca di fare più attenzione a questi aspetti... 😉

    Venendo al tuo problema, direi che dobbiamo inserire prima il campo textarea nel codice htm:

    <textarea name="personale" id="textarea" cols="45" rows="5"></textarea>

    ad esempio prima di:

    <img src='invia.png' width="67" height="54" />

    Ovviamente lo puoi personalizzare come preferisci.
    Quindi nella sezione relativa al codice recuperi i dati inviati tramite $_POST, facendo attenzione ad utilizzare il nome corretto del campo riportato in rosso:

    $personal=$_POST['personale'];

    Adesso, devi decidere cosa vuoi fare con questo valore: se lo vuoi inviare tramite email non dovrai fare altro che appendere $personal a ***$messaggio ***aggiungendo dopo:

    $messaggio = "Ciao $nomedestinatario, ricevi questa mail perchè $nomemittente ti
    ha inviato una E-card <a
    href=http : // www. alibrange . blogspot . com>http://www.alibrange.blogspot.com</a>";

    la riga:

    $messaggio .= $personal;

    occhio al punto (.) che è fondamentale!

    Infine, per non far comparire il messaggio che riporti nel tuo post, basta modificare lo stesso codice in verde sopra riportato fra le virgolette (") di apertura e chiusura, togliendo ed aggiungendo il testo che preferisci.

    Facci sapere se e come risolvi!
    :ciauz:


  • User Newbie

    @ceccus said:

    Ciao tisirbes,

    dal regolamento di sezione abbiamo:

    dal regolamento generale abbiamo:

    Nel futuro cerca di fare più attenzione a questi aspetti... 😉

    Venendo al tuo problema, direi che dobbiamo inserire prima il campo textarea nel codice htm:

    <textarea name="personale" id="textarea" cols="45" rows="5"></textarea>

    ad esempio prima di:

    <img src='invia.png' width="67" height="54" />

    Ovviamente lo puoi personalizzare come preferisci.
    Quindi nella sezione relativa al codice recuperi i dati inviati tramite $_POST, facendo attenzione ad utilizzare il nome corretto del campo riportato in rosso:

    $personal=$_POST['personale'];

    Adesso, devi decidere cosa vuoi fare con questo valore: se lo vuoi inviare tramite email non dovrai fare altro che appendere $personal a ***$messaggio ***aggiungendo dopo:

    $messaggio = "Ciao $nomedestinatario, ricevi questa mail perchè $nomemittente ti
    ha inviato una E-card <a
    href=http : // www. alibrange . blogspot . com>http://www.alibrange.blogspot.com</a>";

    la riga:

    $messaggio .= $personal;

    occhio al punto (.) che è fondamentale!

    Infine, per non far comparire il messaggio che riporti nel tuo post, basta modificare lo stesso codice in verde sopra riportato fra le virgolette (") di apertura e chiusura, togliendo ed aggiungendo il testo che preferisci.

    Facci sapere se e come risolvi!
    :ciauz:
    scusatemi per l'incorrettezza del post, ma non sapevo quale parte di codice fosse interessante e quindi ho pensato di postarlo integralmente:crying:
    e per il link attivo.
    e anche per non essere stata chiara: in effetti volevo sapere come aggiungere una area dove il mittente stesso potesse inviare un msg (quindi scritto dal mittente nel form) al destinatario della card.
    Cmq, vi ringrazio per la risposta.