Foros del Web » Programando para Internet » PHP »

PHP OO Envio de mail con php... pero el texto del cuerpo se corta...

Estas en el tema de Envio de mail con php... pero el texto del cuerpo se corta... en el foro de PHP en Foros del Web. Hola Gente del Foro... Tengo el siguiente... Código: $select_mail = "SELECT `itinerario` FROM `envios_individuales` WHERE `id_mensaje` LIKE '".$clave_envio."' and `id_persona` = '".$id_persona."'"; $resultado_mail = mysql_query($select_mail); ...
  #1 (permalink)  
Antiguo 29/04/2011, 21:51
 
Fecha de Ingreso: noviembre-2010
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Envio de mail con php... pero el texto del cuerpo se corta...

Hola Gente del Foro... Tengo el siguiente...

Código:
$select_mail = "SELECT `itinerario` FROM `envios_individuales` WHERE `id_mensaje` LIKE '".$clave_envio."' and `id_persona` = '".$id_persona."'";
$resultado_mail = mysql_query($select_mail);
if($resulta_mail = mysql_fetch_array($resultado_mail)){
	$itine = $resulta_mail[0];
	mysql_query("UPDATE  `envios_1x1` SET  `no_envios` =  '$suma_envio' WHERE  `envios_1x1`.`id` = '".$id_persona."'");
	if(@mail($mail, $asunto, $itine, $header)){
		echo'<div id="envio_mail_exito">
				<div style="margin:60px 0 0 7px; font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#444; line-height:20px;">
					SE ENVIÓ CON ÉXITO el itinerario <b>VF-'.$clave.'</b><br />
					Al cliente: <b>'.$para.'</b><br />
					al e-mail: <b>'.$mail.'</b><br />
					Cotización No.: <b>'.$suma_envio.'</b><br />
					Clave de envío: <b>'.$clave_envio.'</b>
				</div>
			 </div>';
	}else{
		echo'
		<div id="envio_mail_error">.
			<div id="error_de_envio" onClick="history.back()">Regresar AQUI</div>
		</div>
		';
	}
}
Lo envía... lo recibo... todo bien... pero el cuerpo del mail ($itine) sale cortado... quiero decir que al recibir el mail todo bien, headers, etc... pero el texto del cuerpo se corta en cierto punto... primero pensé que era causa del tiempo (que el envío le ganaba a enviar antes de cargar) por lo que agregré un sleep(3) pero... seguía cortandolo... así que agregué un flush() con JS para hacer que se ejecutara justo cuando terminara de cargar la info... pero SIGUE CORTANDO EL TEXTO... ¿que será... que será?

Saludos!
  #2 (permalink)  
Antiguo 29/04/2011, 22:06
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Envio de mail con php... pero el texto del cuerpo se corta...

eso se debe a que debes de cortar la cadena cada 70 caracteres (según el manual de php), usa wordwrap() para eso
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 30/04/2011, 10:35
 
Fecha de Ingreso: noviembre-2010
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Envio de mail con php... pero el texto del cuerpo se corta...

Gracias maycolalvarez...

El wordwrap, es un comando utilizado para cortar cadenas muy largas en un número detrminado de caracteres, es decir que por ejemplo en un chat en donde algun cliente escribe un mensaje muuuy largo y sin espacios truena las tablas / divs y se desalinea; al utilizar el comando wordwrap se divide la cadena de texto y se soluciona el problema.

Se utiliza de la siguiente manera:

wordwrap($variable,numero_de_caracteres," ",1);

Donde $variable es la variable que contiene la informacion de la cadena de texto a cortar y numero_de_caracteres es el numero de caracteres a mostrar por linea, el espacio en las comillas es para insertar un espacio o tambien se puede sustituir por un <br /> para romper la linea.

La pagina oficial para este comando es: http://mx.php.net/manual/es/function.wordwrap.php


Saludos,

Nota: escribí este pequeño texto porque habemos mucha gente que buscamos respuestas en el foro que a veces nos solucionan la vida. Por ejemplo maycolalvarez (a quien agradezco sin fin) que nos ilustró con una simple pero muy útil manera de solucionarlo. Gracias Nuevamente.
  #4 (permalink)  
Antiguo 30/04/2011, 13:54
 
Fecha de Ingreso: noviembre-2010
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Envio de mail con php... pero el texto del cuerpo se corta...

AUN NADA... SIGUE CORTANDO... creo que es algo más... tengo dentro del texto una tabla con la que se cirerra la cadena de texto... lo curioso es que el mensaje se corta antes de la tabla... me explico... la variable $itine contiene texto con formato HTML y muchos divs con sus respectivos estilos. y Cierra con una tabla. LA TABLA LLEGA INTEGRA! pero el texto de los divs en algun punto se corta.

¿que será... que será?

Etiquetas: corta, cuerpo, envio, mail
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:14.