Visualizzazione risultati 1 fino 7 di 7

Discussione: Invio form a più mail

  1. #1
    Guest

    Predefinito Invio form a più mail

    Salve a tutti.
    Vorrei sapere come inviare il form a più mail.
    Una di queste è la mia, la seconda è quella dell'utente che ha compilato il form (mettendo la sua mail)

    Questo è il codice, cosa devo modificare?
    Codice PHP:
    ...
    $to = "...@gmail.com";
    $headers = "From: " . $_POST['mail'] . "\n";
    ...
    Grazie!
    Marco

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,328

    Predefinito

    Quel codice in realtà non fa nulla.
    Sicuramente, sotto avrai una cosa del tipo:

    Codice PHP:
    if(mail($to,'oggetto','messaggio',$headers))
    echo
    'email inviata con successo';
    else echo
    'Errore durante invio email';
    È quella la riga che in realtà invia l'email.

    Quindi, se devi inviare soltanto 2 email, forse ti conviene a scrivere 2 volte quella riga; in questo modo puoi anche cambiare il testo e l'oggetto dell'email. Ad esempio, all'utente potresti inviare "Ti sei registrato sul sito xxx", mentre a quella che arriva a te, potrebbe essere "L'utente xyz si è registrato sul sito".

    Quindi, lo script diventerebbe circa:

    Codice PHP:
    //prima email, a te
    $to = "...@gmail.com"; //tua email
    $headers = "From: " . $_POST['mail'] . "\n";
    if(
    mail($to,'Nuovo utente',$_POST['nick'].'Si è registrato sul sito',$headers))
    echo
    'email inviata con successo';
    else
    echo
    'Errore durante invio email';


    //seconda email, all'utente

    $to = $_POST['mail'];
    $headers = "From: formulaoneitalia<formulaoneitalia@altervista.org>\n";
    if(
    mail($to,'Registrazione su formulaoneitalia.altervista.org','Ciao '.$_POST['nick'].', ti sei registrato su formulaoneitalia.altervista.org',$headers))
    echo
    'email inviata con successo';
    else
    echo
    'Errore durante invio email';
    Quando però devi inviare più di 2 email, altervista impone un limite di 3 email ogni 2 secondi, quindi poi devi usare le copie-carbone (ad esempio per far le newsletter).

    Ciao!
    Ultima modifica di alemoppo : 02-11-2012 alle ore 13.15.34

  3. #3
    Guest

    Predefinito

    Se voglio tenere lo stesso messaggio per tutte e due le mail posso aggiungere solamente

    $to = $_POST['mail']; sotto $to = "...@gmail.com"; ?

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,328

    Predefinito

    mmh no, perché "$to" è una variabile, e andresti a sovrascriverla.

    Potresti farlo, ma dopo la prima mail().

    Ciao!

  5. #5
    Guest

    Predefinito

    Cioè scrive $to = "...@gmail.com"; $_POST['mail']; ?

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,328

    Predefinito



    Prima di far queste cose, ti consiglio di leggere una guida php, altrimenti potremmo anche darti sorgenti funzionanti, ma non impareresti nulla.

    Ciao!

  7. #7
    Guest

    Predefinito

    Ok, Grazie!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •