Ver Mensaje Individual
  #15 (permalink)  
Antiguo 01/05/2014, 11:01
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: No se envia el mail

Primer consejo: quita todos los "@" mientras estés desarrollando el programa. Te está escondiendo cualquier error que MySQL peuda estar devolviendo y eso NO DEBE PASAR EN ESTA ETAPA del trabajo.
NUNCA.
Segundo: Ten cuidado con el uso de apóstrofos (') y comillas (") cuando las metas en una consulta. No se usan exactamente del mismo modo en PHP que en MySQL, y puedes obtener errores indetectables, si el servidor de MySQL no está configurado de una forma determinada.
Tercero: No confundas asignación en PHP ( = ) con comparación (==). No son la misma cosa.
Cuarta (sugerencia): no ejecutes las queries directamente en MySQL. Carga primero una variable con ella para poder luego verificar lo que contiene y comprobar si quedó bien escrita.

Limpiando un poco probemos esto:

Código PHP:
Ver original
  1. <?php
  2.  
  3. require_once('./config/funciones.php');
  4. conectar('mysql13.000webhost.com', 'a6612376_sergiof', 'Sergivilla1', 'a6612376_users');
  5.  
  6. //Recibir
  7. $user = strip_tags($_POST['usernamesignup']);
  8. $pass = strip_tags(sha1($_POST['passwordsignup']));
  9. $mail = strip_tags($_POST['emailsignup']);
  10. $repw = strip_tags($_POST['passwordsignup_confirm']);
  11. $ip = $_SERVER['REMOTE_ADDR'];
  12. $key = $aleatorio = uniqid();
  13. $activado = "0";
  14. $buscar_user = "SELECT * FROM users WHERE user='".mysql_real_escape_string($user)."'";
  15.  
  16. //verificando la variable.
  17. var_dump($buscar_user);
  18.  
  19. $query = mysql_query($buscar_user) or die(mysql_error());
  20. if ($existe == mysql_fetch_object($query)) {
  21.     echo 'El usuario ' . $user . ' ya existe.';
  22.     header("refresh: 4; url=./register.html");
  23. } else {
  24.     $sql = "INSERT INTO users (user, pass, mail, codigo, activado, ip)";
  25.     $sql .= "VALUES('".mysql_real_escape_string($user)."', ";
  26.     $sql .= "'".mysql_real_escape_string($pass)."', ";
  27.     $sql .= "'".mysql_real_escape_string($mail)."', ";
  28.     $sql .= "'".mysql_real_escape_string($key). "',";
  29.     $sql .= "'".mysql_real_escape_string($activado) . "',";
  30.     $sql .= "'".$ip ."')";
  31.    
  32.     // Verificando la variable.
  33.    
  34.     var_dump($sql);
  35.    
  36.     $meter = mysql_query($sql) or die(mysql_error());
  37.     if ($meter) {
  38.         $para = $mail; //hace referencia a la variable email...
  39.         $titulo = "Activar cuenta";
  40.         $mensaje = 'Para activar la cuenta, es necesario entrar en este enlace: http://ofserker.netai.net/verificar.php?codigo=$key' . "\r\n";
  41.         $cabeceras = 'MIME-Version: 1.0' . "\r\n";
  42.         $cabeceras .= 'Content-type: text/plain; charset=iso-8859-1' . "\r\n";
  43.         $cabeceras .= "From: [email protected]" . "\r\n";
  44.         $email = mail('$para', '$titulo', '$mensaje', '$cabeceras');
  45.  
  46.         if ($email) {
  47.             echo "Usuario " . $user . " creado con &eacutexito. Enviando un mail a <strong>$mail</strong> que luego deber&aacutes aceptar";
  48.             header("refresh: 8; url=./index.php");
  49.         } else {
  50.             echo 'Hubo un error en el registro';
  51.             header("refresh: 4; url=./index.php");
  52.         }
  53.     }
  54. }
  55. ?>
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)