Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514

    [PHPMAILER] Invio e-mail in html con img

    Salve a tutti,
    ho scaricato phpmailer per inviare e-mail in formato html. ma ci sono due problemi. Il primo non mi riesce inviare e mail in quel formato ...il secondo, ma ovviamente debbo risolvere prima l'altro problemuccio , è che debbo aggiungere del testo variabile alle mail

    allora io uso il seguente codice php per la pagina che deve inviare la mail

    Codice PHP:
    require_once('phpmail/class.phpmailer.php');
    $mail = new PHPmailer;
    $body $mail->getFile('conferma_mail.html');
    $body eregi_replace("[\]",'',$body);
    $mail->IsHTML(true); 
    $mail->SetLanguage('it','phpmail/language/'); 
    $mail->From     "info@miosito.it";
    $mail->FromName "First Last";
    $mail->Subject "Invia verifica e-mail";
    $mail->AltBody "To view the message, please use an HTML compatible email viewer!"// optional, comment out and test
    //$mail->MsgHTML($body);
    $mail->Body $body;
    $mail->AddAddress("a me""John Doe");
    if(!
    $mail->Send()) {
       echo 
    $mail->ErrorInfo;
    } else {
      echo 
    "Mail inviata con successo";

    il file conferma_mail.html invece

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Notifica e-mail</title>
    <style>
    body
    	{
    	background-image:url(../img/public/sfondomail.jpg);
    	background-repeat:no-repeat;
    	}
    .corpo
    	{
    	position:absolute;
    	top:100px;
    	left:20px;
    	padding:10px;
    	font-size:12pt;
    	color:#FFFFFF;
    	font-family:Verdana, Arial, Helvetica, sans-serif;
    	}
    	
    </style>
    </head>
    <body >
    	<div class="corpo">
    		
    
    Verifica invio mail</p>
    	</div>
    </body>
    </html>
    questo è quanto. sul sito ufficiale non ci sono molte spiegazioni . nella sezione example solo tre esempi.

    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  2. #2

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ciao maruzio,
    grazie della segnalazione della pillola. il problema però non è stato risolto.
    posto il codice che ho creato usando la tua pillola

    Codice PHP:
    require_once('phpmail/class.phpmailer.php');
    $mail = new PHPMailer(); 
    $mail->From "email@tuosito.com"
    $mail->FromName "Nome Cognome"
    $mail->Subject "Il mio primo email con PHPmailer"
    $body $mail->getFile('conferma_mail.html'); 
    $mail->MsgHTML($body);
    $mail->AddAddress("pippo@tin.it"); 
    if(!
    $mail->Send()) {
       echo 
    $mail->ErrorInfo;
    } else {
      echo 
    "Mail inviata con successo";

    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  4. #4
    Ma che errore produce?

  5. #5
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    nessun erorre almeno nella classe. la mail vine spedita ma non visualizzo nè no sfondo e nè il testo

    se uso invece

    codice:
    background="../img/public/sfondomail.jpg"
    all'interno del tag body, lo visualizzo correttamente. in pratica non mi permette di utilizzare il foglio di stile. ma onestamente mi sembra una limitazione esagerata visto che ormai si usano solo fogli di stile

    altra cosa. se la provo in locale(windows) mi dice che manca il settaggio della lingua
    in remoto no
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  6. #6
    il problema é il seguente:
    Per embeddare l'immagine, phpmailer usa un'espressione regolare (riga 1542) che prevede un =, mentre nel css non si usa =.
    O modifichi questa riga e non solo oppure puoi provare a modificare il css così:

    background-image:url(http://www.tuosito.com/img/public/sfondomail.jpg);

    ma non so se funziona

  7. #7
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ma il problema è proprio il foglio di stile
    ad esempio
    se metto all'interno del tag body background="....nomefile" me lo carica

    se aggiungo style="background-repeat:no repeat"

    non mi funziona più

    intanto non so come fare a non far ripetere il body
    per la storia della lingua?
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  8. #8
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    nessuno sa come risolvere?


    faccio un breve riepilogo
    con phpmailer è possibile inserire una immagine di sfondo solo nel tag body
    ma non so come eviatre di ripetere l'immagine poichè la classe non accetta i fogli di stile
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


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.