Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    la mail non va più a capo

    Salve a tutti.
    Dal sito che curo invio ai clienti, in contemporanea, una email in formato testo (usavamo il classico mail() ) e un sms, così li raggiungiamo ovunque siano.
    Adesso stiamo introducendo le mail HTML, ma dal messaggio spariscono i ritorni a capo... stiamo usando la classe phpmailer.

    Questa è la parte che invia la mail (che NON mantiene i CR):
    Codice PHP:
      $messaggio_tracking utf8_decode($_POST['message']);    
        
    // imposta parametri mailer
      
    $mail              = new PHPMailer(); // defaults to using php "mail()"
      
    $mail->IsSendmail(); // telling the class to use SendMail transport
      
    $body              '<body style="margin: 10px;">';
      
    $body             .= '<div style="width: 640px; font-family: Verdana, Arial, sans-serif; font-size: 14px;">';
      
    $body             .= '<div align="center">[img]../images/newlogo.png[/img][img]../images/banner_mail.jpg[/img]</div>
    '
    ;
      
    $body             .= '<div style="font-family: Verdana, Arial, sans-serif; font-size: 14px; background-color: #069; color: #FF0; font-weight: bold;">';
      
    $body             .= '<div align="center">';
      
    $body             .= '

    Nome mittente</p></div>'
    ;
      
    $body             .= '</div>';
      
    $body             .= "$messaggio_tracking"// questo è il messaggio che perde i CR
      
    $body             .= '</div>';
      
    $body             .= '</body>';
      
      
    $body             preg_replace('/\\\\/',''$body); 
      
    $mail->SetFrom('ammi@mittente.com''Mittente'); // indirizzo mittente
      
    $mail->AddReplyTo("ammi@mittente.com","Mittente");
      
    $mail->AddAddress("dest@destinatario.it"""); // indirizzo destinatario
      
    $mail->Subject    utf8_decode("Azienda x Tracking");
      
    $mail->AltBody    "Per vedere questo messaggio, usa un programma di posta HTML compatabile."// optional, comment out and test
      
    $mail->MsgHTML($body); 
    Questa invece è la parte che invia l'sms (che mantiene i ritorni a capo).
    Codice PHP:
    // invia sms tracking
              
    if (trim($_POST['mod_tracking']) != "2" && $data['cellular'] != "" ) {   
                  
    $smstext utf8_decode(stripslashes($_POST['message']));
                  
    $error nmsms_send'aziendaservice''invial,0'$smstext$data['cellular'], 'Nome Azienda' );
                  if( !empty(
    $error) )   echo "Si è verificato il seguente errore: $error"

  2. #2
    Ho risolto usando (solo sulla variabile che va nella mail):

    Codice PHP:
    $messaggio_tracking nl2br(utf8_decode($_POST['message'])); 
    invece di
    Codice PHP:
    $messaggio_tracking utf8_decode($_POST['message']); 
    Al contrario la variabile per l'sms continua a funzionare perfettamente come prima
    Codice PHP:
    $smstext utf8_decode(stripslashes($_POST['message'])); 


    In compenso adesso ho il punto interrogativo al posto del simbolo dell'euro sia nella mail che nel messaggio sms...

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.