Llevo desde ayer revisando el código y no encuentro el error.
Tengo una página para registrar unas cuentas en una base de datos, y si la sentencia se ejecuta correctamente, el sistema debería llevarte a otra página automáticamente.
El problema es que al registrar los datos en la base de datos, no te lleva a la siguiente web, es como si actualizara la pagina, he probado a poner el header al principio del php, para comprobar si funciona, y en ese caso si que lleva instantáneamente al entrar en la web a otra distinta.
Pense que podía ser por los SQL, y los elimine, pero sigue sin funcionar.
Os dejo el código que utilizo:
Código PHP:
<?php
header('Content-Type: text/html; charset=iso-8859-1');
require_once("funciones/config.php");
require_once("funciones/configuracion.php");
require 'class.phpmailer.php';
$codigoproceso = substr( md5(microtime()), 20, 20);
// Funciones - Mensajes Generales de PERFECTO
function system_message_verify ( $msg ){
header("Location: manage.php?id=system-message-verify&msg=".$msg.""); exit();
}
session_start();
if(!empty($_POST["security"])){
if($_SESSION["security"] != $_POST["security"]) { $errors[] = "<font color='red'>Codigo de verificación erroneo.</font>"; }
}
$security = rand(10000, 100000);
$_SESSION["security"] = $security;
if(!empty($_POST["accountname"]) && !empty($_POST["password"]) && !empty($_POST["password2"]) && !empty($_POST["email"]) && $_POST["expansion"] != "" && !empty($_POST["security"])){
// Conexión MYSQL - NO editar
$mysql_connect = mysqli_connect($mysql["host"], $mysql["username"], $mysql["password"], $mysql["puerto"]) or die("¡Ups! Hay un error, vuelve más tarde.");
mysqli_select_db($mysql_connect, $mysql["realmd"]) or die("¡Ups! Hay un error, vuelve a intentarlo más tarde");
$post_accountname = mysqli_real_escape_string($mysql_connect, trim(strtoupper($_POST["accountname"])));
$post_firstname = mysqli_real_escape_string($mysql_connect, trim($_POST["firstname"]));
$post_lastname = mysqli_real_escape_string($mysql_connect, trim($_POST["lastname"]));
$post_password = mysqli_real_escape_string($mysql_connect, trim(strtoupper($_POST["password"])));
$post_password_final = mysqli_real_escape_string($mysql_connect, SHA1("".$post_accountname.":".$post_password.""));
$post_password2 = trim(strtoupper($_POST["password2"]));
$post_email = mysqli_real_escape_string($mysql_connect, trim($_POST["email"]));
$post_expansion = mysqli_real_escape_string($mysql_connect, trim($_POST["expansion"]));
$post_sexo = mysqli_real_escape_string($mysql_connect, trim($_POST["sexo"]));
$fecha = time();
$timerecruit = date("Y-m-d H:i:s",$fecha);
$check_account_query = mysqli_query($mysql_connect, "SELECT COUNT(*) FROM account WHERE username = '".$post_accountname."'");
$check_account_results = mysqli_fetch_array($check_account_query);
if($check_account_results[0]!=0){ $errors[] = "<font color='red'>La cuenta ya existe.</font>"; }
if(strlen($post_accountname) > 32) { $errors[] = "<font color='red'>La cuenta no debe pasar las 32 letras.</font>"; }
if(strlen($post_password) < 6) { $errors[] = "<font color='red'>La contraseña tiene que ser mayor de 6 letras.</font>"; }
if(strlen($post_accountname) < 3) { $errors[] = "<font color='red'>La cuenta tiene que ser mayor de 3 letras.</font>"; }
if(strlen($post_accountname) > 32) { $errors[] = "<font color='red'>La cuenta no debe pasar las 32 letras.</font>"; }
if(strlen($post_password) < 6) { $errors[] = "<font color='red'>La contraseña tiene que ser mayor de 6 letras.</font>"; }
if(strlen($post_password) > 32) { $errors[] = "<font color='red'>La contraseña no debe de ser mayor de 32 letras.</font>"; }
if(strlen($post_email) > 64) { $errors[] = "<font color='red'>El email no debe de ser mayor de 64 letras.</font>"; }
if(strlen($post_email) < 8) { $errors[] = "<font color='red'>El email debe de ser mayor de 8 letras.</font>"; }
if(!ereg("^[0-9a-zA-Z%]+$", $post_accountname)) { $errors[] = "<font color='red'>La cuenta tiene que estar bien escrita.</font>"; }
if(!ereg("^[0-9a-zA-Z%]+$", $post_password)) { $errors[] = "<font color='red'>La contraseña tiene que estar bien escrita.</font>"; }
if(!ereg("^[0-2%]+$", $post_expansion)) { $errors[] = "<font color='red'>Debes seleccionar una expansión para tu cuenta.</font>"; }
if(strlen($post_expansion) > 1) { $errors[] = "<font color='red'>Debes seleccionar al menos 1 expansión.</font>"; }
if($post_accountname == $post_password) { $errors[] = "<font color='red'>La cuenta no puede ser igual que la contraseña.</font>"; }
if($post_password != $post_password2) { $errors[] = "<font color='red'>Las contraseñas no coinciden.</font>"; }
if(!is_array($errors)){
[B]header('Location: http://www.example.com/');[/B]
}
mysqli_close($mysql_connect);
}