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ó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.