Foros del Web » Programando para Internet » PHP »

Consulta: Validacion usuarios

Estas en el tema de Consulta: Validacion usuarios en el foro de PHP en Foros del Web. Buenas tardes, soy nuevo y llevo poco tiempo trabajando con PHP y tengo un problema a la hora de validar a los usuarios de una ...
  #1 (permalink)  
Antiguo 02/09/2009, 09:21
Avatar de zhordrak  
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Consulta: Validacion usuarios

Buenas tardes, soy nuevo y llevo poco tiempo trabajando con PHP y tengo un problema a la hora de validar a los usuarios de una web de practicas que estoy haciendo.

El error que me da es:
Notice: Undefined index: tipo in C:\wamp\www\proyectos_web\gestion_sat\admin\valida r_usuario.php

El cual hace referencia a una linea concreta del codigo, donde dependiendo del usuario que entre, lo redirija a una pagina u otra, pero me da error y no redirige.

Os dejo el codigo, por si veis el fallo, por mas vueltas que he estado dando no he podido darle solucion

Saludos y gracias

Edito: Decir que en la base de datos tengo una tabla con los usuarios, password, nombre y "tipo", donde este ultimo es el 0 y 1 que salen en el codigo.

Código PHP:
<?php
session_start
();
//datos para establecer la conexion con la base de mysql.
include(".././includes/conexion.php"); //INCLUIMOS EL ARCHIVO DE CONEXION A MYSQL.
function quitar($mensaje)
{
    
$nopermitidos = array("'",'\\','<','>',"\"");
    
$mensaje str_replace($nopermitidos""$mensaje);
    return 
$mensaje;
}
if(
trim($_POST["usuarioNick"]) != "" && trim($_POST["usuarioClave"]) != "")
{
    
// Puedes utilizar la funcion para eliminar algun caracter en especifico
    //$usuario = strtolower(quitar($HTTP_POST_VARS["usuario"]));
    //$password = $HTTP_POST_VARS["password"];
    // o puedes convertir los a su entidad HTML aplicable con htmlentities
    
$usuarioNick strtolower(htmlentities($_POST["usuarioNick"], ENT_QUOTES));
    
$usuarioClave $_POST["usuarioClave"];
    
$result mysql_query('SELECT usuarioClave, usuarioNick FROM usuario WHERE usuarioNick=\''.$usuarioNick.'\'');
    if(
$row mysql_fetch_array($result)){
        if(
$row["usuarioClave"] == $usuarioClave){
            
$_SESSION["k_username"] = $row['usuarioNick'];
            echo 
'<h3>Has sido logueado correctamente, registrado como:</h3> '.$_SESSION['k_username'].' <p>';
    
$permisos $row['tipo'];  // --------------------------- Aqui esta el fallo ---------------
      
if($permisos=='0'){ 
       
header('location:usuario.php'); 
      } 
     else if(
$permisos=='1'){ 
      
header('location:admin.php'); 
      } 
            
//Elimina el siguiente comentario si quieres que re-dirigir automáticamente a index.php
            /*Ingreso exitoso, ahora sera dirigido a la pagina principal.
            <SCRIPT LANGUAGE="javascript">
            location.href = "index.php";
            </SCRIPT>*/
        
}else{
            echo 
'<h3>Usuario o Password incorrectos, vuelva a intentarlo.</h3>';
        }
    }else{
        echo 
'<h3>Usuario o Password incorrectos, vuelva a intentarlo.</h3>';
    }
    
mysql_free_result($result);
}else{
    echo 
'<h3>Debe especificar un usuario y password</h3>';
}
mysql_close();
?>

Última edición por zhordrak; 02/09/2009 a las 09:23 Razón: Añadir informacion
  #2 (permalink)  
Antiguo 02/09/2009, 09:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Consulta: Validacion usuarios

Los notices no son errores como tal, son advertencias de que estas usando una variable sin que este definida, es decir en algún lado tratas de usar el contenido 'index' de un arreglo sin que este definido y tienes que verificar eso y actuar sobre eso.

Saludos.
  #3 (permalink)  
Antiguo 02/09/2009, 09:32
Avatar de zhordrak  
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Consulta: Validacion usuarios

Ok, muchas gracias por la rapida respuesta.
Mirare a ver donde esta la variable sin definir.

Saludos y gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:20.