Función email_to_user, y conversión de datos

Función email_to_user, y conversión de datos

de dptoinformatica dptoinformatica -
Número de respuestas: 3

Hola a todos,  en la versión 1.7+, el archivo moodlelib.php contiene la función para enviar correo electrónicos, mi problema radica en la conversión  a utf-8 de todo lo que envía. Pues no me funciona.

Si No comento las siguientes líneas, me envía correos en blanco

 $mail->FromName = $textlib->convert($mail->FromName, 'utf-8', $mail->CharSet); //From Name
            foreach ($mail->ReplyTo as $key => $rt) {                                      //ReplyTo Names
                $mail->ReplyTo[$key][1] = $textlib->convert($rt, 'utf-8', $mail->CharSet);
            }
            $mail->Subject = $textlib->convert($mail->Subject, 'utf-8', $mail->CharSet);   //Subject
            foreach ($mail->to as $key => $to) {
                $mail->to[$key][1] = $textlib->convert($to, 'utf-8', $mail->CharSet);      //To Names
            }
            $mail->Body = $textlib->convert($mail->Body, 'utf-8', $mail->CharSet);         //Body
            $mail->AltBody = $textlib->convert($mail->AltBody, 'utf-8', $mail->CharSet);   //Subject

Pero si las comento los correos que me llegan, van en un formato un tanto extraño.

Que puedo hacer???

Un cordial saludo

Promedio de valoraciones: -
En respuesta a dptoinformatica dptoinformatica

Re: Función email_to_user, y conversión de datos

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
¿Tienes instalada la extensión mbstring de PHP?

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Función email_to_user, y conversión de datos

de dptoinformatica dptoinformatica -

Si , pero lo que no se si está con los parámetros correctos.

Esta es mi configuración:


Directive Local Value Master Value
mbstring.detect_order no value no value
mbstring.encoding_translation Off Off
mbstring.func_overload 1 1
mbstring.http_input pass pass
mbstring.http_output pass pass
mbstring.internal_encoding no value no value
mbstring.language neutral neutral
mbstring.substitute_character no value no value

Un saludo

Bárbara

En respuesta a dptoinformatica dptoinformatica

Re: Función email_to_user, y conversión de datos

de dptoinformatica dptoinformatica -

Ya lo he solucionado, basta con comentar , una linea más para que no de problemas

$mail->CharSet = $charset;
        /// And convert some strings
  // cambiamos esto para ver si no nos llegan los mensajes en blanco bárbara
  
            $mail->FromName = $textlib->convert($mail->FromName, 'utf-8', $mail->CharSet); //From Name
            foreach ($mail->ReplyTo as $key => $rt) {                                      //ReplyTo Names
                $mail->ReplyTo[$key][1] = $textlib->convert($rt, 'utf-8', $mail->CharSet);
            }
            $mail->Subject = $textlib->convert($mail->Subject, 'utf-8', $mail->CharSet);   //Subject
            foreach ($mail->to as $key => $to) {
                $mail->to[$key][1] = $textlib->convert($to, 'utf-8', $mail->CharSet);      //To Names
            }
            $mail->Body = $textlib->convert($mail->Body, 'utf-8', $mail->CharSet);         //Body
            $mail->AltBody = $textlib->convert($mail->AltBody, 'utf-8', $mail->CharSet);   //Subject