Ver Mensaje Individual
  #14 (permalink)  
Antiguo 22/09/2021, 20:56
Avatar de edurocc
edurocc
 
Fecha de Ingreso: julio-2013
Mensajes: 103
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Formulario por smtp

Cita:
Iniciado por prueba230683 Ver Mensaje
Prueba a utilizar la función nl2br($mensaje), para que transforme los saltos de línea en saltos de línea de HTML. Y asegúrate de que envias el email en formato html:

Código:
$mail->isHTML(true);
Así, el mensaje se enviará con la cabecera Content-type: text/html.

Además, para concatenar teléfono, nombre, junto con el resto de datos, deberás utilizar el separador html <br> en lugar del salto de línea (\r\n). Quedaría algo así:

Código PHP:
Ver original
  1. $str = $nombre . '<br>' . $telefono . '<br>' . nl2br($mensaje_recibido_del_cliente);

PD: por curiosidad, a qué hosting te cambiaste? Por si otros usuarios llegan a este tema con el mismo problema.

Volví e intentare terminar con este formulario.
primero te respondo, el host se llama Hostinger y estoy muy conforme hasta ahora ja

ahora de lleno a intentar colocar los saltos.
como me sugieres, cambie esas dos líneas pero me llega el mail vacío.
te mostrare como tenia los códigos y como los modifique

original: $mail->isSMTP();
modifico: $mail->isHTML(true);

original: $mail->Body = 'Nombre: ' . $_POST['nombre'] . ' _ ' . ' Telefono: ' . $_POST['tel'] . ' _ ' . ' Mensaje: ' . $_POST['mensaje'] . ' _ '. 'Fin del mensaje.';
modifico: $mail->Body = $nombre . '<br>' . $tel . '<br>' .
nl2br($mensaje_recibido_del_cliente);


como te comente antes, me llega el mail pero con el cuerpo vacío.
y con las líneas originales, funcionaba bien, pero no realizaba los saltos de línea.

Gracias.