Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/01/2011, 05:27
javy
 
Fecha de Ingreso: septiembre-2002
Mensajes: 153
Antigüedad: 21 años, 7 meses
Puntos: 1
Validacion y echo fuera de pagina

Hola a todos.

Conseguí hacerme una página donde encriptaba las contraseñas de los usuarios.

En otra página, tengo el formulario del login para entrar con "usuario" y "contraseña".

Debido a la forma de encriptar las contraseñas (usando AES_ENCRYPT), la forma de validación ha de ser un código php ANTES de <html><head><body>...

Dentro del código de validación, hay un echo ("Datos incorrectos").

¿Qué ocurre?... que, al estar fuera de HTML, lo muestra arriba del todo, moviendo la página, etc.

¿Me podríais echar un cable para poder colocar este echo en un sitio en concreto?

P.D.: he probado a usar un div y llamar a un css e incluso a partir el código para que el echo se viera donde quería y lo que conse´guí fue que me descolocó la página completamente...

Os dejo el código (que espero que le pueda servir a alguien más) con el echo marcado en rojo y gracias por adelantado y un saludo:

Código:
<?php
// NECESARIO PARA CREAR SESIONES
require_once("../incluye/sesion.php");
// INICIA SESIÓN
$sesion = new sesion();
// SI EL FORMULARIO HA SIDO ENVIADO, SE VALIDA
if(isset($_POST['submit'])){
// SE CREAN LAS VARIABLES
$nombreusuarios = $_POST['nombreusuarios'];
$claveusuarios = $_POST['claveusuarios'];
// SE VALIDA QUE SEAN VERDADERAS LAS VARIABLES
if(validarUsuario($nombreusuarios,$claveusuarios) == true)
{			
$sesion->set('nombreusuarios',$nombreusuarios);
// SI SON VERDADERAS, MANDA A SIGUIENTE PÁGINA
header("location: privado2.php");
} else { // SI SON FALSAS
echo "Verifica tu nombre de usuario y contraseña";
}}
// VALIDA EL NOMBRE Y LA CLAVE DE USUARIO
function validarUsuario($nombreusuarios,$claveusuarios)
{
// CONECTAR A LA BASE DE DATOS
$conexion = new mysqli("localhost","usuario","contrasena","bd");
// SE HACE LA CONSULTA
$consulta = "SELECT AES_DECRYPT(claveusuarios,'llave') FROM usuarios WHERE nombreusuarios = '$nombreusuarios';";
// RECOGE EL RESULTADO
$result = $conexion->query($consulta);
if($result->num_rows > 0){
$fila = $result->fetch_assoc();
// COMPARA LA CLAVE DE USUARIO
if(strcmp($claveusuarios,$fila["AES_DECRYPT(claveusuarios,'poliki')"]) == 0)	
// DEVUELVE VERDADERO			
return true;						
else
// DEVUELVE FALSO	
return false;
}
else
// DEVUELVE FALSO
return false;
}
?>
<HTML><HEAD></HEAD><BODY>.. MI PAGINA... </BODY></HTML>