Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/10/2008, 10:36
matiD
 
Fecha de Ingreso: octubre-2008
Mensajes: 85
Antigüedad: 16 años, 4 meses
Puntos: 0
Problema con identificacion de usuario

Hola a todos, estoy haciendo una identificacion de usuarios, por php, el registro me funciona perfecto y todo bien pero cuando quiero identificarlo me da un error, el registro se que funciona porque por phpmyadmin chequeo si creo el usuario y esta todo ok, la contraseña encriptada y todo pero no consigo autentificarlo.

el script que utilizo es el siguiente

tengo un formulario que envia las variables user y pass al archivo clientes.php

en clientes tengo lo siguiente

Código php:
Ver original
  1. <?php
  2. require_once 'requires.php';
  3.  
  4. //ASIGNAMOS LAS VARIABLES DE POST A VARIABLES SIMPLES
  5. $user = $_POST['user'];
  6. $pass = $_POST['pass'];
  7.  
  8. if ($user && $pass)
  9. {
  10.     if (login($user, $pass))
  11.     {
  12.         //SI ESTA REGISTRADO GUARDAR DATOS
  13.         $valid_user = $user;
  14.         session_register("valid_user");
  15.     }
  16.    
  17.     else
  18.     {
  19.         head("Acceso Denegado");
  20.        
  21.         cuerpo_nouser();
  22.        
  23.         footer();
  24.  
  25.         exit;
  26.     }
  27. }
  28.  
  29. check_valid_user();
  30.        
  31. ?>

la funcion login() y check_valid_user que estan en el archivo func_user.php son las siguientes

Código php:
Ver original
  1. <?php
  2. function login($user, $pass)
  3. {
  4. //CONECTAMOS A LA BASE DE DATOS
  5.     $conn = conecta_db();
  6.  
  7.     if (!conn)
  8.         return 0;
  9.  
  10.     $result = mysql_query("select * from usuario
  11.                             where 'usuario'='$user'
  12.                             and 'pass' = pasword('$pass')");
  13.                        
  14.     if (!result)
  15.         return 0;
  16.    
  17.     if (mysql_num_rows($result)>0)
  18.         return 1;
  19.     else
  20.         return 0;
  21.  
  22. }
  23.  
  24. function check_valid_user()
  25. {
  26.     global $valid_user;
  27.     global $user;
  28.    
  29.     if (session_is_registered("valid_user"))
  30.     {  
  31.         $user = $valid_user;
  32.         head("Zona Clientes");
  33.        
  34.         cuerpo_user();
  35.        
  36.         footer();
  37.         exit;
  38.     }  
  39.        
  40.     else
  41.     {
  42.         head("Registro de Clientes");
  43.        
  44.         cuerpo_reguser();
  45.        
  46.         footer();
  47.         exit;
  48.     }
  49. }
  50. ?>

por lo que veo esta bien, pero me da el siguiente error y no me autentifica

Código:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\wamp\www\baterias\func_user.php on line 17
la tabla se llama usuario y los campos se llaman usuario y pass.

magic_quotes y register_globals estan OFF

Desde ya muchas gracias

Última edición por matiD; 19/10/2008 a las 10:44