Foros del Web » Programando para Internet » PHP »

Script de envío de email deja de funcionar

Estas en el tema de Script de envío de email deja de funcionar en el foro de PHP en Foros del Web. Cordial saludo, comunidad Foros del Web. En esta ocasión quisiera pedir su colaboración con un pequeño asunto que me tiene cabezón desde la semana pasada: ...
  #1 (permalink)  
Antiguo 05/04/2016, 17:20
Avatar de boggiepopphantom  
Fecha de Ingreso: agosto-2012
Mensajes: 29
Antigüedad: 11 años, 8 meses
Puntos: 0
Script de envío de email deja de funcionar

Cordial saludo, comunidad Foros del Web.

En esta ocasión quisiera pedir su colaboración con un pequeño asunto que me tiene cabezón desde la semana pasada: Administro un sitio web pequeño, el cual está alojado en godaddy. Tengo un script para el registro de usuarios, el cual, al hacer el ingreso de los datos en la base de datos, envía un email al usuario con su usuario y contraseña (debido a que el script genera una dependiendo de los nombres del usuario). Curiosamente, desde la semana pasada el script dejó de funcionar adecuadamente: He verificado que registra los datos en al base de datos, pero en el momento de enviar el email, el script "Se detiene". He tratado de reescribir el código, pero nada funciona. He cambiado los datos, a ver si es algo de sintaxis, pero no doy con el asunto.

Adjunto el código, rogándoles el favor me indiquen qué puede estar pasando. El código que adjunto es el que funcionaba hasta la semana pasada.

PD: No se si godaddy me bloqueó el envío de emails, y no se cómo verificar, si es que es posible hacerlo, tal situación.

Código PHP:
<?php
if(isset($_POST['regus'])){
    
$nombres=($_POST['nombres']);
    
$apellidos=($_POST['apellidos']);
    
$name=$nombres." ".$apellidos;
    
$email=$_POST['email'];
    
$tipous=$_POST['tipous'];
    
$asignatura=$_POST['Asignatura'];
    
$sede=$_POST['sede'];
    
$jornada=$_POST['jornada'];
    
$us1=substr($nombres,0,1);
    
$us2=explode(" ",$apellidos);
    
$user=$us1.$us2[0];
    
$q=$db_connect->query("INSERT INTO usuario(idus,user,password,nombre,email) VALUES(NULL,'$user','$user','$name','$email')");
        if(
$q){
            
$mid=$db_connect->query("SELECT MAX(idus) FROM usuario");
            
$result=$mid->fetch_array(MYSQLI_NUM);
            
$maxid=$result[0];
            
$qq=$db_connect->query("INSERT INTO anual(idan,idus,year,rol,ref,jornada,sede) VALUES(NULL,'$maxid',2015,'$tipous','$asignatura','$jornada','$sede')");
            if(
$qq){
                
$titulo    'Bienvenidos a la Web';
                
$cabeceras 'From: [email protected]"\r\n" .
                            
'X-Mailer: PHP/' phpversion();
                
$cuerpo "Hola ";
                
$cuerpo .= $name;
                
$cuerpo .= "!" "\r\n";
                
$cuerpo .= "Bienvenido a nuestra web." "\r\n";
                
$cuerpo .= 'Acabas de ser registrado como usuario, y puedes acceder utilizando los siguientes datos de ingreso: ' "\r\n";
                
$cuerpo .= 'Usuario: ';
                
$cuerpo .= $user "\r\n";
                
$cuerpo .= 'Password: ';
                
$cuerpo .= $user "\r\n";
                
$cuerpo .= 'Te invitamos a ingresar y cambiar inmediatamente tu contraseña.' "\r\n";
                
$cuerpo .= '¿Tienes comentarios o sugerencias para la página? No dudes en escribirnos: [email protected]"\r\n";
                
$cuerpo .= '¿Requieres un espacio para tu área o proyecto? No dudes en escribirnos.' "\r\n";
                
$cuerpo .= 'Bienvenido a tu web, esperamos y animamos tu participación activa.' "\r\n";
                
$cuerpo .= 'Atte.' "\r\n";
                
$cuerpo .= 'Equipo Web Master.' "\r\n";
                
$mes=mail($email$titulo$cuerpo$cabeceras);
                if(
$mes) {
                    echo 
"<p class=\"btn btn-success\">Usuario registrado correctamente, y mensaje enviado con éxito. Por favor espera para ser redirigido</p>";
                    echo 
"<META HTTP-EQUIV=\"Refresh\" CONTENT=\"2; URL=http://www.web.com\">";
                    }else {
                        echo 
"<p class=\"btn btn-warning\">Usuario registrado correctamente.";
                        echo 
"Se presentó un problema en el envío del email, por favor  comunicarse con webmaster.";
                        echo 
"[email protected]</p>";
                        echo 
"<META HTTP-EQUIV=\"Refresh\" CONTENT=\"2; URL=http://www.web.com\">";
                        }
            }else{
                echo 
"<p class=\"btn btn-danger\">No se pudo ingresar datos en tabla anual. Por favor contacte Web Master</p>";
            }
            }else{
                echo 
"<p class=\"btn btn-danger\">No se pudo registrar usuario. Por favor contacte Web Master</p>";
        }
    }
?>


<form method="post" class="form-horizontal" style="width: 60%;">
  <div class="form-group">
    <label for="apellidos" class="col-sm-2 control-label">Apellidos</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="apellidos" name="apellidos" placeholder="Apellidos">
    </div>
  </div>
  <div class="form-group">
    <label for="nombres" class="col-sm-2 control-label">Nombres</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="nombres" name="nombres" placeholder="Nombres">
    </div>
  </div>
  <div class="form-group">
    <label for="inputEmail3" class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" id="email" name="email" placeholder="Email">
    </div>
  </div>
  <div class="form-group">
    <label for="tipous" class="col-sm-2 control-label">Categoría</label>
    <div class="col-sm-10">
        <select name="tipous">
            <option value="2">Docente</option>
            <option value="3">Estudiante</option>
            <option value="1">Directivo</option>
        </select>
    </div>
  </div>
  <div class="form-group">
    <label for="asignatura" class="col-sm-2 control-label">Asignatura<br />(Curso)</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="Asignatura" name="Asignatura" placeholder="Asignatura">
    </div>
  </div>
  <div class="form-group">
    <label for="sede" class="col-sm-2 control-label">Sede</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="sede" name="sede" placeholder="Sede" value="C">
    </div>
  </div>
    <div class="form-group">
    <label for="jornada" class="col-sm-2 control-label">Jornada</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="jornada" name="jornada" placeholder="Jornada" value="M">
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" name="regus" id="regus"  class="btn btn-default">Registrar</button>
    </div>
  </div>
</form>
De antemano, gracias por su inmensa colaboración.

Atte.
Mantikor
  #2 (permalink)  
Antiguo 05/04/2016, 18:00
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: Script de envío de email deja de funcionar

Cita:
PD: No se si godaddy me bloqueó el envío de emails, y no se cómo verificar, si es que es posible hacerlo, tal situación.
Preguntales....

por otro lado.. cual es el error que te genera??
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #3 (permalink)  
Antiguo 05/04/2016, 21:10
Avatar de boggiepopphantom  
Fecha de Ingreso: agosto-2012
Mensajes: 29
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Script de envío de email deja de funcionar

Muchas gracias por tu pronta respuesta. Me sucede algo curioso: La mayor parte del tiempo estoy trabajando en linux, y el archivo de configuración que me muestra los errores no me funciona en linux. Probé el código en windows, y me muestra el siguiente error:

PHP Warning: mail(): Failed to connect to mailserver at &quot;localhost&quot; port 25, verify your &quot;SMTP&quot; and &quot;smtp_port&quot; setting in php.ini or use ini_set() in G:\PleskVhosts\villasdelprogreso.edu.co\httpdocs\p ages\indoc.php on line 42

La línea que menciona en cuestión es

Código PHP:
Ver original
  1. $mes=mail($email, $titulo, $cuerpo, $cabeceras);

¿será que si me desahabilitaron el envío de emails?

Por otro lado, verifiqué el phpinfo, y en la directiva smtp, el local value y master value me aparece "localhost"; en smtp_port me aparece 25 en local value y master value. Y en la sección "Curl", en el inciso protocolo, me aparece habilitado, entre otros, smtp y smtps.

De antemano, gracias por tu inmensa colaboración.

Última edición por boggiepopphantom; 05/04/2016 a las 21:18
  #4 (permalink)  
Antiguo 11/04/2016, 21:18
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: Script de envío de email deja de funcionar

El error es 1 de 2:

- Tus datos no son correctos.
- Te lo deshabilitaron.

Si es la ultima, preguntales ¿porque?
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #5 (permalink)  
Antiguo 13/04/2016, 21:08
Avatar de boggiepopphantom  
Fecha de Ingreso: agosto-2012
Mensajes: 29
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Script de envío de email deja de funcionar

Muchas gracias por tu respuesta.

Verificaré mañana con servicio técnico de godaddy y posteo lo que me comentaron.

Muchas gracias

Etiquetas: email, funcionar, registro, select, sql, tabla, 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 13:31.