Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Página con PHPMailer no acaba nunca de cargar

Estas en el tema de Página con PHPMailer no acaba nunca de cargar en el foro de PHP en Foros del Web. ¡Hola! Tengo el siguiente PHP que envía un email a alguien en un proceso de recuperar la clave. Se obtiene un email y se envía ...
  #1 (permalink)  
Antiguo 04/09/2016, 17:22
 
Fecha de Ingreso: diciembre-2014
Ubicación: Madrid
Mensajes: 274
Antigüedad: 9 años, 4 meses
Puntos: 5
Pregunta Página con PHPMailer no acaba nunca de cargar

¡Hola!

Tengo el siguiente PHP que envía un email a alguien en un proceso de recuperar la clave. Se obtiene un email y se envía un correo, de momento en blanco. La cuestión es que el archivo nunca acaba de cargar (en Firefox 48 de Mac siempre sale la ruleta gris con un gran punto negro girando). ¿Por qué podría ser?

¡Gracias!

Código del PHP

Código PHP:
Ver original
  1. <?php
  2.     ini_set('display_errors', '1');
  3.     $PaginaSinInicio = ""; $NoLibrerias = ""; $NoEstilos = "";
  4.     include("../SiempreAdjunto.php");
  5.     include("phpmailer/PHPMailerAutoload.php");
  6.     // 1. Comienzo importando los registros del usuario a partir de su email
  7.         $QUsuario = "SELECT * FROM `Usuarios` WHERE `CorreoElectronico` = '".$_GET['Correo']."'";
  8.         $MQUsuario = $MyConnect->query($QUsuario);
  9.         if ($MQUsuario->num_rows == '1'){
  10.             $MFUsuario = $MQUsuario->fetch_assoc();
  11.             // 2. Ahora genero una nueva contraseña, la paso a md5 y la registro en la base de datos
  12.                 function NuevaContrasena($Longitud, $IncluirMayusculas, $IncluirNumeros, $IncluirOtros){
  13.                     $Cadena = 'abcdefghijklmnopqrstuvwxyz';
  14.                     if($IncluirMayusculas == TRUE){ $Cadena .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; }
  15.                     if($IncluirNumeros == TRUE){ $Cadena .= '1234567890'; }
  16.                     if($IncluirOtros == TRUE){ $Cadena .= '|@#~$%()=^*+[]{}-_'; }
  17.                     $CadenaFinalVacia = "";
  18.                     $Cadena = str_split($Cadena, 1);
  19.                     for($i=1; $i<=$Longitud; $i++){
  20.                         mt_srand((double)microtime() * 1000000);
  21.                         $Numero = mt_rand(1,count($Cadena));
  22.                         $CadenaFinalVacia .= $Cadena[$Numero - 1];
  23.                     }
  24.                     return $CadenaFinalVacia;
  25.                 }
  26.                 $NuevaContra = NuevaContrasena(12, TRUE, TRUE, FALSE);
  27.                 $QNuevaContra = "UPDATE `Usuarios` SET `ClaveUsuario` = '".md5($NuevaContra)."' WHERE `ID` = '".$MFUsuario['ID']."'";
  28.                 $MQNuevaContra = $MyConnect->query($QNuevaContra);
  29.             // 3. Ahora enviaré el mail al usuario
  30.                 $mail = new PHPMailer();
  31.                  
  32.                 $mail->SetFrom("[email protected]", "iStudy");
  33.                 $mail->Subject = "Subject del correo";
  34.                 $mail->AddAddress($MFUsuario['CorreoElectronico'], $MFUsuario['NombreN']." ".$MFUsuario['NombreA1']);
  35.                  
  36.                 $body  = "Probando PHPMailer...";
  37.                 $mail->MsgHTML($body);
  38.                 $mail->Send();
  39.         }elseif ($MQUsuario->num_rows == '0'){
  40.             echo '7';  
  41.         }else{
  42.             echo '6';  
  43.         }
  44. ?>
__________________
Experto: aunque no sepas hacer algo, los novatos te pedimos que nos digas algo aunque sepas que no acertarás

Última edición por diegoguerrero; 04/09/2016 a las 17:38
  #2 (permalink)  
Antiguo 04/09/2016, 19:19
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Página con PHPMailer no acaba nunca de cargar

despues de
ini_set('display_errors', '1');
poner
error_reporting(E_ALL);

y ademas activar el modo debug de phpmailer:
$mail->SMTPDebug = 1;
$mail->Send();
  #3 (permalink)  
Antiguo 05/09/2016, 02:13
 
Fecha de Ingreso: diciembre-2014
Ubicación: Madrid
Mensajes: 274
Antigüedad: 9 años, 4 meses
Puntos: 5
Respuesta: Página con PHPMailer no acaba nunca de cargar

Cita:
Iniciado por Patriarka Ver Mensaje
despues de
ini_set('display_errors', '1');
poner
error_reporting(E_ALL);

y ademas activar el modo debug de phpmailer:
$mail->SMTPDebug = 1;
$mail->Send();
Hola, patriarka.

Muchas gracias por contestar. Me temo que tu consejo para ver los errores ni siquiera ha resultado efectiva. Pero ya te digo yo que el problema es el Send(). Para tu información tengo un servidor propio Ubuntu 16 con LAMP y Sendmail. ¿Cómo podría hacer para funcionar la función (jajaja) mail() de PHP? Es que me resulta más cómoda pero leí de esta clase y decía todo el mundo que iba fenomenal.

¡Gracias!
__________________
Experto: aunque no sepas hacer algo, los novatos te pedimos que nos digas algo aunque sepas que no acertarás
  #4 (permalink)  
Antiguo 05/09/2016, 18:36
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Página con PHPMailer no acaba nunca de cargar

si tenes sendmail para que usas phpmailer???
y si queres usar mail() para qué queres sendmail???

si queres usar la función mail() de php solo tenes que configurarla bien
en el php.ini tenes
server smtp: localhost
port: 25

si eso funciona dejalo asi,
sino pone el server smtp y puerto que corresponda, no hace falta usuario ni password
  #5 (permalink)  
Antiguo 06/09/2016, 02:11
 
Fecha de Ingreso: diciembre-2014
Ubicación: Madrid
Mensajes: 274
Antigüedad: 9 años, 4 meses
Puntos: 5
Respuesta: Página con PHPMailer no acaba nunca de cargar

Cita:
Iniciado por Patriarka Ver Mensaje
si tenes sendmail para que usas phpmailer???
y si queres usar mail() para qué queres sendmail???

si queres usar la función mail() de php solo tenes que configurarla bien
en el php.ini tenes
server smtp: localhost
port: 25

si eso funciona dejalo asi,
sino pone el server smtp y puerto que corresponda, no hace falta usuario ni password
Ya lo tengo así, mira la foto que te adjunto.

Te decía lo de PHPMailer por pensar una alternativa a la función mail() que no funciona y no sé por qué.

Oye, algo en lo que caigo ahora: ¿debería tener el puerto 25 abierto?

¡Gracias!
__________________
Experto: aunque no sepas hacer algo, los novatos te pedimos que nos digas algo aunque sepas que no acertarás
  #6 (permalink)  
Antiguo 06/09/2016, 13:15
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Página con PHPMailer no acaba nunca de cargar

y si , tenes que poner lo que tenes habilitado
tanto el servidor saliente "localhost" u otra ip y el puerto, 25 es el default y debe estar abierto OBVIO

Etiquetas: html, nunca, página, phpmailer, registro, select, usuarios
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 16:20.