Foros del Web » Programando para Internet » PHP »

PHPMailer no envía el correo

Estas en el tema de PHPMailer no envía el correo en el foro de PHP en Foros del Web. Hola que tal, he estado dándole vueltas a varios temas del foro referente a "PHPMailer", viendo configuraciones y de mas cosas. Mi problema esta en ...
  #1 (permalink)  
Antiguo 08/10/2015, 13:27
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Pregunta PHPMailer no envía el correo

Hola que tal, he estado dándole vueltas a varios temas del foro referente a "PHPMailer", viendo configuraciones y de mas cosas.

Mi problema esta en que no se envía nada de mi formulario a mi correo (trate de enviar un mensaje de outlook a gmail y gmail a gmail). Lo que pasa es que en un if donde checo que si se envía el correo me mande un mensaje si se envió o no y simplemente me manda que no se envió.

Les agradecería mucho si me ayudaran a resolver el problema.
De ante mano muchas gracias.

Este es el código completo:

Código del formulario
Código HTML:
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
	<title>CFE - Encuestas</title>

</head>
<body>
	
	<div class="container">
		<div class="row">
			<form action="php/enviarFormulario.php" method="post" enctype="multipart/form-data">
				<div class="campos">
					<label>Para:</label>
					<input type="email" name="email" required>
				</div>
				<div class="campos">
					<label>Asunto:</label>
					<input type="text" name="asunto">
				</div>
				<div class="campos">
					<label>Mensaje:</label>
					<textarea name="mensaje"></textarea>
				</div>

				<input id="submit" type="submit" name="enviar" value="Enviar mail">
			</form>
		</div>
	</div>	
</body>
</html> 
Condigo PHP
Código PHP:
<?php
if($_POST['email']){ //Verifico que se introdujo un email
    
require "phpmailer/class.phpmailer.php";
    require 
"phpmailer/class.smtp.php";

    
//Configuracion de smtp
    
$mail = new PHPMailer(); //
    
$mail->IsSMTP();
    
$mail->SMTPAuth true//Autentificacion
    
$mail->isHTML(true); //Admitir codigo html
    
$mail->Helo "smtp.gmail.com"//Esta parte la vi en la respuesta de un foro donde decia que tambien se debia poner
    
$mail->Host "smtp.gmail.com";
    
$mail->Port 25//He probado los puerto 465 y 587
    
$mail->SMTPDebug  4//Lei que este metodo sirve para verificar que tipo de error se presenta (se puede utilizar 2, 3 o 4)
    
$mail->Username "[email protected]"//Mi correo de hotmail
    
$mail->Password "*******"//Mi contraseña

    //Datos de quien lo envia
    
$mail->From "[email protected]";
    
$mail->FromName "Mi nombre";
    
$mail->Timeout=60;
    
$mail->IsHTML(true);
    
    
$para $_POST['email'];
    
$asunto $_POST['asunto'];
    
$mensaje $_POST['mensaje'];

    
//Datos del correo (Para quien es, el asunto y el mensaje)
    
$mail->AddAddress = ($para);
    
$mail->Subject = ($asunto);
    
$mail->Body = ($mensaje);

    if (
$mail->Send()) {
        echo 
" <script language='JavaScript'> alert('Se envio');
        window.location= 'http://localhost:8080/Curso/Encuestas/' </script>"
;
    }else{
        echo 
" <script language='JavaScript'> alert('No se envio');
        window.location= 'http://localhost:8080/Curso/Encuestas/' </script>"
;
    }

}else{
    echo 
" <script language='JavaScript'> alert('No se inserto ningún email');
    window.location= 'http://localhost:8080/Curso/Encuestas/' </script>"
;
}
?>
  #2 (permalink)  
Antiguo 08/10/2015, 13:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: PHPMailer no envía el correo

Me imagino que tenemos que ejecutar el código mentalmente para conocer la posible salida que obtienes ¿cierto?

Digo, de menos pudiste explicar más de la respuesta que obtienes.

Un "no envía correo" no sirve de nada.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 08/10/2015, 14:01
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: PHPMailer no envía el correo

Esto es lo que pasa cuando lo ejecuto
  #4 (permalink)  
Antiguo 08/10/2015, 14:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: PHPMailer no envía el correo

Creo que no se ve nada de lo que pusiste.

Pero, por si acaso te sale el mensaje "No se envio" entonces ¿por qué no muestras también el mensaje de error que seguramente produce PHPMailer?

Es mejor conocer eso que un "No se envio" que no sirve de nada.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 08/10/2015, 14:17
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: PHPMailer no envía el correo

Disculpa es que apenas estoy viendo como funciona esto.
Mira aquí esta un enlace de dropbox donde subí la imagen

[URL="https://www.dropbox.com/s/8o4uh2ed426hpeu/phpmailer1.png?dl=0"]https://www.dropbox.com/s/8o4uh2ed426hpeu/phpmailer1.png?dl=0[/URL]

Te digo que no me sale error de phpmailer u.u

PD: Anteriormente utilice otra configuración y hay si me salia error de conexión con el host, fallo conexión con smtp y otras cosas.
  #6 (permalink)  
Antiguo 08/10/2015, 14:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: PHPMailer no envía el correo

Mira, los errores no se "muestran" por si sólos, tu debes obtener el error.

Si el método Send() falló debes recuperar el error de la instancia de PHPMailer para entender la causa.

¿Por qué no lees el manual de PHPMailer?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 08/10/2015, 14:38
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: PHPMailer no envía el correo

una pregunta estas 2 lineas de aqui:

Código PHP:
Ver original
  1. $mail->Helo = "smtp.gmail.com"; //Esta parte la vi en la respuesta de un foro donde decia que tambien se debia poner
  2.     $mail->Host = "smtp.gmail.com";

no difieren de estas 2 de aqui???:
Código PHP:
Ver original
  1. $mail->Username = "[email protected]"; //Mi correo de hotmail
  2.     $mail->Password = "*******"; //Mi contraseña

yo no es que use mucho smtp para el envio de emails pero no se si se pueda utilizar el smtp de gmail para enviar con un email de hotmail, puede ser alli tu problemita
__________________
[email protected]
HITCEL
  #8 (permalink)  
Antiguo 09/10/2015, 07:25
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: PHPMailer no envía el correo

Mmm es vdd tratare de meterlo en un trycatch para ver que problema me manda
  #9 (permalink)  
Antiguo 09/10/2015, 07:31
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: PHPMailer no envía el correo

Cita:
Iniciado por xfxstudios Ver Mensaje
una pregunta estas 2 lineas de aqui:

Código PHP:
Ver original
  1. $mail->Helo = "smtp.gmail.com"; //Esta parte la vi en la respuesta de un foro donde decia que tambien se debia poner
  2.     $mail->Host = "smtp.gmail.com";

no difieren de estas 2 de aqui???:
Código PHP:
Ver original
  1. $mail->Username = "[email protected]"; //Mi correo de hotmail
  2.     $mail->Password = "*******"; //Mi contraseña

yo no es que use mucho smtp para el envio de emails pero no se si se pueda utilizar el smtp de gmail para enviar con un email de hotmail, puede ser alli tu problemita
Mmm a lo mejor, pero es que había leído que
Código PHP:
$mail->Helo "smtp.gmail.com"
era para poder enviar a otros dominios
pero bueno seguiré haciendo pruebas.

Gracias.
  #10 (permalink)  
Antiguo 09/10/2015, 10:39
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: PHPMailer no envía el correo

Hola keny93,

xfxstudios tiene razón en lo que dice, una cosa es poder enviar a otros dominios y otra muy diferente es enviar desde gmail con una cuenta de hotmail.

Si quieres enviar mediante el smtp de gmail, deberás hacerlo con una cuenta de gmail, si tienes una cuenta de hotmail, deberás enviarlo mediante el smtp de hotmail, que no se si se puede.
  #11 (permalink)  
Antiguo 20/03/2016, 02:13
 
Fecha de Ingreso: octubre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: PHPMailer no envía el correo

Hola gente, hoy después de tanto tiempo sucedió hoy algo curioso, platicando con mi hermano resulto que el esta tratando de hacer algo similar a lo mio y me comento que en un foro había visto un nombre parecido al mio, en el cual estaba buscando la respeta a su problema y entre la charla le dije que esa publicación que vio era la mía y que la respuesta al problema era que necesita un servidor de correos para poder enviarlos.

Como aclaración para aquellos que se rompen la cabeza tratando de enviar correos sin éxito una de las cosas que muchos no mencionan cuando explican el funcionamiento de phpMailer es que NECESITAN UN SERVIDOR DE CORREOS si están trabajando una una maquina personal (en mi caso era mi laptop).

Busquen en google un SERVIDOR DE CORREOS gratuito e instalen lo.
  #12 (permalink)  
Antiguo 20/03/2016, 07:54
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: PHPMailer no envía el correo

Cita:
Iniciado por keny_93 Ver Mensaje
Hola gente, hoy después de tanto tiempo sucedió hoy algo curioso, platicando con mi hermano resulto que el esta tratando de hacer algo similar a lo mio y me comento que en un foro había visto un nombre parecido al mio, en el cual estaba buscando la respeta a su problema y entre la charla le dije que esa publicación que vio era la mía y que la respuesta al problema era que necesita un servidor de correos para poder enviarlos.

Como aclaración para aquellos que se rompen la cabeza tratando de enviar correos sin éxito una de las cosas que muchos no mencionan cuando explican el funcionamiento de phpMailer es que NECESITAN UN SERVIDOR DE CORREOS si están trabajando una una maquina personal (en mi caso era mi laptop).

Busquen en google un SERVIDOR DE CORREOS gratuito e instalen lo.
es interesante que lo digas porque ¿Donde mencionas que utilizas una maquina local?, pero bueno hace algún tiempo coloque como montar un servidor virtual de correos con stunnel. Saludos
__________________
[email protected]
HITCEL

Etiquetas: phpmailer
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




La zona horaria es GMT -6. Ahora son las 23:35.