Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/08/2009, 06:42
wani
 
Fecha de Ingreso: agosto-2009
Mensajes: 45
Antigüedad: 14 años, 8 meses
Puntos: 0
Problemas con login.php

Hola a todos, tengo un problema con el login. Lo que quiero hacer se supone que es simple, que un usuario se logue con su nombre y contraseña y que luego en el index.php salga bienvenido "usuario".

He conseguido que el usuario se logue(insertar en la tabla,hacer la consulta,verificarlo) también consigo que aparezca lo de bienvenido en el index.php pero no se si hay que pasarle la variable $usuario a index.php e imprimirla o yo que se...Cuando actualizo la pagina ya no sale el nombre del usuario.

Ya se que este tema puede estar manido. He mirado varios post sobre este tema pero dejo de hacerme pajas mentales. Si me pueden ayudar se lo agradeceria. Os dejo el codigo:

validar.php

Código PHP:
<?php

//datos para establecer la conexion con la base de mysql.
mysql_connect('xxxxxxx','xxxxxxxxxxx','xxxxxxxxx')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('xxxxxxxxxxxx')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function 
quitar($mensaje)
{
    
$nopermitidos = array("'",'\\','<','>',"\"");
    
$mensaje str_replace($nopermitidos""$mensaje);
    return 
$mensaje;
}
if(
trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["password"]) != "")
{
    
    
//$usuario = strtolower(quitar($HTTP_POST_VARS["usuario"]));
    //$password = $HTTP_POST_VARS["password"];
    // o puedes convertir los a su entidad HTML aplicable con htmlentities
    
$usuario strtolower(htmlentities($HTTP_POST_VARS["usuario"], ENT_QUOTES));
    
$password $HTTP_POST_VARS["password"];
    
$result mysql_query('SELECT password, usuario FROM usuarios WHERE usuario=\''.$usuario.'\'');
    if(
$row mysql_fetch_array($result)){
        if(
$row["password"] == $password){
            
$_SESSION["k_username"] = $row['usuario'];
            echo 
'Has sido logueado correctamente '.$_SESSION['k_username'].' <p>';

            
?>
            <form action="index.php" method="post">
            <input type="hidden" name="usuario" value="<?=$usuario?>"> <!--le pasamos la variable usuario a index.php -->
            <input type="submit" value="Entrar" />
            </form>
            <?php

            
        
        
}else{
            echo 
'Password incorrecto';
        }
    }else{
        echo 
'Usuario no existente en la base de datos';
    }
    
mysql_free_result($result);
}else{
    echo 
'Debe especificar un usuario y password';
}
mysql_close();
?>
e index.php

Código PHP:
 <?php

require('configuracion.php');
require(
'funciones.php');
include(
'header.php');

$user $_POST['usuario'];//cualquiera de las 2 una va en el login y la otra en donde se requiera el saludo o usar session en vez de cookie :D
//$user = $_COOKIE['usuario'];
$sql "SELECT * FROM usuarios WHERE usuario='$user'";
$result mysql_query($sql) or die (mysql_error());
$row mysql_fetch_array($result);
echo 
'BIENVENIDO '.$row['usuario'];  

resto de codigo....