Función MAIL() no envía correos

Koletta

VIP
Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.121
A ver si alguien puede ayudarme. La función email me vuelve loco. No entiendo como puede ser tan sensible. Desde una web que estoy creando envío varios emails (alta usuario, alta empresas, promociones, etc...). Tanto el alta de empresas como el de usuarios funciona perfectamente y para crear el de "cambio de contraseña" copie y pegué el código de uno de los anterior y modifiqué el texto. Pues bien, me ocurre que quitando texto plano deja de funcionar. Llevo horas dándole vueltas y nada. Os dejo el código por si veis algo mal. Muchas gracias.

PHP:
	$remite = 'gestiondeusuarios@midominio.com';
	$asunto = 'Nueva clave de Usuario';
	$cuerpo = '
			<table width="800" border="0" align="center" style="padding:2px;font-size:18px;text-align:justify;border-radius:7px;-moz-box-shadow: 0 0 3px 3px #888;-webkit-box-shadow: 0 0 3px 3px#888;box-shadow: 0 0 2px 2px #888;"> 
				<tr><td>
					<p align="center"><img src="http://midominio.coms/img/logo2.png" width="450" height="75"></p>
					
		 			Estimad@ usuari@:<br>
					Este mensaje de correo electrónico responde a su solicitud de nueva contraseña para su cuenta en Midominio.<br>
					<span style="padding-left:50px;"><b>Usuario:</b> '.$correo.'</span><br>
					<span style="padding-left:50px"><b>Contraseña:</b> '.$password.'</span><br><br>
					Si lo desea, puede modificarla dentro en la <a href="www.midominio.com/usuarios/">Sección de Usuarios</a> en el apartado de configuración.<br>
					
					Atentamente,<br>
					<span style="padding-left:25px;">El equipo de midominio</span>

				</td></tr>
			</table>';
	
	$headers = "MIME-Version: 1.0\r\n";
	$headers .= "Content-type: text/html; charset=UTF-8\r\n";
	$headers .= "From: ".$remite."\r\n";
	
	if(mail($correo,$asunto,$cuerpo,$headers))
	{
		echo 'OK';			
	}else{
		echo 'ERROR';			
	}

Puse la condición final para ver si funcionaba o no. Siempre da OK pero no siempre envía el correo.:topsy_turvy:

Muchas gracias.
 

xSkArx

Dseda
Programador
Verificación en dos pasos desactivada
Desde
25 Dic 2013
Mensajes
1.074
Te recomiendo uses PHPMailer
 

Cicklow

Admin
Verificado con videollamada
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
30 May 2011
Mensajes
451

Si tenes WHM entras y en la seccion email, tenes el listado de emails que no han salido del server y la razon de porque no salieron... sino tenes pues podrias usar la clase phpmailer.
 

Tony

VIP
Ómicron
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
16 Jun 2011
Mensajes
4.752
Primero y antes que nada, lo tienes bien configurado? (si es un vps/dedicado con OS limpio tienes que haberlo configurado previamente).

Revisa con <?php phpinfo(); ?> (sendmail_path)
 

murdoco

Gamma
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
10 Feb 2012
Mensajes
201
Usa alguna clase que utilice el protocolo SMTP, más fiable que la función mail de php.
 

Tony

VIP
Ómicron
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
16 Jun 2011
Mensajes
4.752
Phpmailer es buena :)

Sent from my Nexus 4 using Tapatalk
 

nemesis866

Curioso
Verificación en dos pasos desactivada
Desde
1 Sep 2010
Mensajes
8
Segun entiendo, la funcion mail te sirve para enviar otros datos, el codigo esta bien, tal vez el error no este en esta parte del codigo, habilita la opcion de mostrar errores en el php.ini o revisa el archivo de log en tu servidor para ver con certeza el error.

Saludos
 

Koletta

VIP
Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.121
Muchas gracias a todos. Perdonad la espera, he estado de viajes.

Paso a utilizar la función Phpmailer y os comento el resultado.
 

Crea una cuenta o accede para comentar

Debes ser un miembro para poder comentar

Crear cuenta

Crea una cuenta en nuestra comunidad

Acceder

¿Ya tienes una cuenta? Accede aquí


Arriba