Ver Mensaje Individual
  #10 (permalink)  
Antiguo 24/03/2014, 07:27
OfSerker
 
Fecha de Ingreso: marzo-2014
Mensajes: 168
Antigüedad: 10 años, 1 mes
Puntos: 2
Pregunta Respuesta: Confirmación registro por mail

Bueno, no os habéis explicado muy bien... Soy nuevo en esto, solo se seleccionar cosas en la bd y el metodo $_POST.

Aqui os paso los archivos que me dijisteis que escribiera:

activacion.php:

Código PHP:
<?php
$email 
utf8_decode(mysqli_real_escape_string($conexion, ((isset($_GET['email']) && !empty($_GET['email']))?$_GET['email']:false)));
$key utf8_decode(mysqli_real_escape_string($conexion, ((isset($_GET['key']) && !empty($_GET['key']))?$_GET['key']:false)));
 
$ffkk mysqli_query($conexion"SELECT tucolumna FROM tabla WHERE email = '".$email."'")or die(mysqli_query($conexion));
$del mysqli_fetch_assoc($ffkk);
if(
$del['activacion'] == '1'){
    echo 
"No puedes volver a activar tu cuenta, ya se encuentra activada.";
}
else{
 
$verificacion mysqli_query($conexion"SELECT * FROM tutabla WHERE email = '".$email."' AND code = '".$key."'")or die(mysqli_error($conexion));
if(
$veri mysqli_fetch_array($verificacion)){
    
$codes md5 (rand (0,90900));
    
$ya mysqli_query($conexion"UPDATE tutabla SET activacion = '1' WHERE activacion = '0'")or die(mysqli_error($conexion));
    
$ya2 mysqli_query($conexion"UPDATE tutabla SET code = '".$codes."' WHERE email = '".$email."'")or die(mysqli_error($conexion));
    echo  
"Tu cuenta ha sido activada.";
 
}
?>

activacion.php:

Código PHP:
<?php
$key 
$_GET['id'];

$query=mysql_query("SELECT * FROM users WHERE id='$key'");
if(
$check=mysql_fetch_array($query)) //con este if verificamos que el codigo existe en la BD 
            

            
                if(
$check['active']=="1"//Si el mail ya esta verificado 
                

                    echo 
"Tu mail ya esta verificado";
                } 
                elseif(
$check['active']=="0"//Si no esta verificado 
                

                
//Actualizamos la BD, y cambiamos el valor de dafault "NO" en verificado por "SI" 
                    
$sql "UPDATE users SET active='1' WHERE id='$key'"
                    
mysql_query($sql) or die("Error query ".mysql_error());  
                     echo 
"<p>Gracias. Hemos verificado su email. Ahora puede acceder con su usuario y clave</p>";
                     echo 
"<a href='../index.php'>Loguearse</a>";
                     
//habilitamos el formulario de login luego de la bienvenida
                    
                
                

            } 
            else 
//Si el codigo de verificacion no existe 
            

            echo 
"<p>Tu c&oacute;digo es incorrecto</p>"
            echo 
"<a href='../index.php'>Loguearse</a>";
            } 
        
?>

mail.php:

Código PHP:
<?php
require_once('./config/funciones.php');
conectar('localhost''root''123456''ofserker');

$para $email//hace referencia a la variable email...
$titulo "Activar cuenta";
$mensaje "El mensaje es este chaval. ejemplo xd";
$cabeceras  'MIME-Version: 1.0' "\r\n";
$cabeceras .= 'Content-type: text/plain; charset=iso-8859-1' "\r\n";
$cabeceras .= 'From: Activar cuenta <tucorreo>' "\r\n";
 
mail($para$titulo$mensaje$cabeceras);

?>
Como hago para que los archivos trabajen juntos (los junte), que pongo en la db y si hay algún error porfavor, decidmelo.

Última edición por OfSerker; 24/03/2014 a las 07:33