Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Form mail usando smtp, e' possibile?

    Dovrei fare un formmail utilizzando un server di posta in uscita smtp che specifichero' io.
    Qualcuno sa darmi qualche consiglio o qualche link a script gia' fatti?
    Io ora uso la funziona mail, anche con questo nuovo script continuero' ad usare sta funzione? o ne esistono altre?

  2. #2
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    mi spiego meglio:
    ho il modulo in locale in un file all'intero di easyphp, mentre il file che invia l'email sta sul server, quindi nell'action del modulo ci metto www.miosito.it/file_che_invia_email.php

    Come posso fare per mandare le email con smtp? Devo mettere qualcosa in file_che_invia_email.php no?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Allora
    Se usi la funzione mail, usi il server smtp indicato nei settaggi di php e ti tieni quello
    In alternativa puoi provare questa classe
    http://phpmailer.sourceforge.net/
    Che ti permette di specificare tutti i parametri (tra i quali mail html, attachement e altro) e inviare tutto tramite smtp
    Attento che non con tutti gli smtp mi funziona (ad esempio mi funziona con freemail ma non con yahoo), probabilmente per qualche tipo di "blocco" che tali server pongono

  4. #4
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da Leilond
    Attento che non con tutti gli smtp mi funziona (ad esempio mi funziona con freemail ma non con yahoo), probabilmente per qualche tipo di "blocco" che tali server pongono
    cioe' significa che dovrei mettere smtp.freemail.it e non smtp.yahoo.it ??
    Pero' non ho capito come dovrei impostare lo script.
    Un esempio a volo a volo non ce l'hai?

  5. #5
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    up

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Lo trovi qui
    http://phpmailer.sourceforge.net/extending.html

    Devi mettere un smtp VALIDO, ovvero uno in cui tu abbia un indirizzo mail da usare come mittente
    Ti copio l'esempio ritoccandolo qua e la per facilizzare
    Mettiamo che hai una casella di posta su freemail con questo indirizzo
    pippo@freemail.it (solitamente quando compri un dominio ti danno anche un indirizzo di posta con smtp)
    Codice PHP:
    require("class.phpmailer.php");

    $mail = new PHPMailer();

    $mail->From     "pippo@fremail.it"// indirizzo di provenienza
    $mail->FromName "tuosito.com admin";  // nome utente
    $mail->Host     "smtp.freemail.it"// server smtp
    $mail->Mailer   "smtp"// dice a php mailer di usare smtp invece della funzione mail

    // preparo il corpo del messaggio
    $body  "Ciao, questa è una mail SMTP

    "
    ;
    $body .= "[i]Allego[/i] una foto.

    "
    ;
    $body .= "Ciao, 
    "
    ;
    $body .= "Amministratore di tuosito.com";
    // Preparo un testo semplice per i client che non accettano mail html
    $text_body  "Ciao, questa è una mail SMTP\n\n";
    $text_body .= "Allego una foto.\n\n";
    $text_body .= "Ciao, \n";
    $text_body .= "Amministratore di tuosito.com";
    $mail->Body    $body;
    $mail->AltBody $text_body;
    $mail->AddAddress("destinatario1@xxx.com""primo");
    $mail->AddAddress("destinatario2@xxx.com""secondo");
    $mail->AddAttachment("miafoto.jpg""Foto");
    if(!
    $mail->Send())
      echo 
    "Errore!";
    // Pulizia per eventuali altri invii successivi
    $mail->ClearAddresses();
    $mail->ClearAttachments(); 
    Trovi qui anche un tutorial in inglese
    http://phpmailer.sourceforge.net/tutorial.html

  7. #7
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da Leilond
    Lo trovi qui
    http://phpmailer.sourceforge.net/extending.html

    Devi mettere un smtp VALIDO, ovvero uno in cui tu abbia un indirizzo mail da usare come mittente
    Ti copio l'esempio ritoccandolo qua e la per facilizzare
    Mettiamo che hai una casella di posta su freemail con questo indirizzo
    pippo@freemail.it (solitamente quando compri un dominio ti danno anche un indirizzo di posta con smtp)
    Codice PHP:
    require("class.phpmailer.php");

    $mail = new PHPMailer();

    $mail->From     "pippo@fremail.it"// indirizzo di provenienza
    $mail->FromName "tuosito.com admin";  // nome utente
    $mail->Host     "smtp.freemail.it"// server smtp
    $mail->Mailer   "smtp"// dice a php mailer di usare smtp invece della funzione mail

    // preparo il corpo del messaggio
    $body  "Ciao, questa è una mail SMTP

    "
    ;
    $body .= "[i]Allego[/i] una foto.

    "
    ;
    $body .= "Ciao, 
    "
    ;
    $body .= "Amministratore di tuosito.com";
    // Preparo un testo semplice per i client che non accettano mail html
    $text_body  "Ciao, questa è una mail SMTP\n\n";
    $text_body .= "Allego una foto.\n\n";
    $text_body .= "Ciao, \n";
    $text_body .= "Amministratore di tuosito.com";
    $mail->Body    $body;
    $mail->AltBody $text_body;
    $mail->AddAddress("destinatario1@xxx.com""primo");
    $mail->AddAddress("destinatario2@xxx.com""secondo");
    $mail->AddAttachment("miafoto.jpg""Foto");
    if(!
    $mail->Send())
      echo 
    "Errore!";
    // Pulizia per eventuali altri invii successivi
    $mail->ClearAddresses();
    $mail->ClearAttachments(); 
    Trovi qui anche un tutorial in inglese
    http://phpmailer.sourceforge.net/tutorial.html
    ok, lo provero' ma il file class.phpmailer.php che richiede dove lo prendo?
    Quello che hai postato tu e' il file che invia le email, no?

  8. #8

  9. #9
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    si grazie, ho fatto tutto e funziona
    Grazie dell'aiuto

  10. #10
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    rieccomi, piccolo problemino:
    in pratica quando invio le email escono tutti gli indirizzi di posta presenti nel database e quindi chiunque puo' leggere gli indirizzi degli altri utenti.
    Come posso fare per evitare questa cosa?
    Ho modificato questi campi:
    $mail->AddAddress("destinatario1@xxx.com", "primo");
    $mail->AddAddress("destinatario2@xxx.com", "secondo");

    ne ho lasciato uno solo e l'ho modificato cosi:
    $mail->AddAddress("$email");
    in modo che pesca tutto dal campo email del database.

    Pero' non so come fare ad evitare a tutti gli iscritti di visualizzare gli indirizzi di tutti gli altri.
    Sapete aiutarmi?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.