registro de Usuarios Que YO ELIJA Ayuda!
Publicado por seikenzero (2 intervenciones) el 05/03/2006 19:43:15
hola! a todos! Resulta que estoy haciendo una seccion Php en la que un usuario se puede registrar directamente eligiendo un pass(que me aparece encriptado en mi base de datos mysql) un usuario y demas datos que directamente al crearlos el se almacenan en mi base de datos y ya desde una pagina de login puede acceder a la zona restringida.
Hasta aqui bien ya tengo una pagina de login y una de registro de new user funcionando.
Lo que necesito es poder decidir yo a quien doy acceso o no y que no sea automatico.
Lo que se me ha ocurrido es crear en mi base de datos un campo llamado "permiso"
que al registrarse un usuario, se cree en el resultado=no.(esto tambien lo he conseguido ya) lo que quiero es que desde la pagina de Login (usuario y contraseña) al pulsar y intentar acceder a la seccion protegida compruebe que ese valor en realidad sea =si y que si no lo es,que no le deje acceder.
Asi ese valor lo cambiaria yo directamente desde la base de datos para dar acceso a quien quiera.
La pagina de login hace una llamada a una pagina llamada comprueba.php que es la que comprueba si el usuario y el password estan en mi base de datos
Como puedo hacer para que compruebe tambien si ese valor "permiso" es igual a "si" en la base de datos y que si no lo es no continue?...este es el codigo de la pagina comprueba.php
<?
session_start();
$server="localhost"; /* Nuestro server mysql */
$database="xxxxxx"; /* Nuestra base de datos */
$dbpass=""; /*Nuestro password mysql */
$dbuser="xxxxxx; /* Nuestro user mysql */
$query="SELECT * FROM usuarios WHERE login='$login'";
$link=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$link);
if(mysql_num_rows($result)==0){
echo "No existe el login introducido";
} else {
$array=mysql_fetch_array($result);
if($array["password"]==crypt($pass,"xxxxxxx") ){
/* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo.
Recuerda usar la misma semilla para encriptar los dos passwords. */
$SESSION["login"]=$login;
$SESSION["nombre"]=$array["nombre"];
$SESSION["apellidos"]=$array["apellidos"];
session_register("SESSION");
header("location:user.php");
} else {
echo "Password incorrecto!";
} /* Cerramos este ultimo else */
} /* Cerramos el else que corresponde a la comprobación de que el login existe */
?>
No controlo mucho el codigo php ni sus variables si alguien me puede hechar una mano... MILLONES DE GRACIAS por adelantado
Hasta aqui bien ya tengo una pagina de login y una de registro de new user funcionando.
Lo que necesito es poder decidir yo a quien doy acceso o no y que no sea automatico.
Lo que se me ha ocurrido es crear en mi base de datos un campo llamado "permiso"
que al registrarse un usuario, se cree en el resultado=no.(esto tambien lo he conseguido ya) lo que quiero es que desde la pagina de Login (usuario y contraseña) al pulsar y intentar acceder a la seccion protegida compruebe que ese valor en realidad sea =si y que si no lo es,que no le deje acceder.
Asi ese valor lo cambiaria yo directamente desde la base de datos para dar acceso a quien quiera.
La pagina de login hace una llamada a una pagina llamada comprueba.php que es la que comprueba si el usuario y el password estan en mi base de datos
Como puedo hacer para que compruebe tambien si ese valor "permiso" es igual a "si" en la base de datos y que si no lo es no continue?...este es el codigo de la pagina comprueba.php
<?
session_start();
$server="localhost"; /* Nuestro server mysql */
$database="xxxxxx"; /* Nuestra base de datos */
$dbpass=""; /*Nuestro password mysql */
$dbuser="xxxxxx; /* Nuestro user mysql */
$query="SELECT * FROM usuarios WHERE login='$login'";
$link=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$link);
if(mysql_num_rows($result)==0){
echo "No existe el login introducido";
} else {
$array=mysql_fetch_array($result);
if($array["password"]==crypt($pass,"xxxxxxx") ){
/* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo.
Recuerda usar la misma semilla para encriptar los dos passwords. */
$SESSION["login"]=$login;
$SESSION["nombre"]=$array["nombre"];
$SESSION["apellidos"]=$array["apellidos"];
session_register("SESSION");
header("location:user.php");
} else {
echo "Password incorrecto!";
} /* Cerramos este ultimo else */
} /* Cerramos el else que corresponde a la comprobación de que el login existe */
?>
No controlo mucho el codigo php ni sus variables si alguien me puede hechar una mano... MILLONES DE GRACIAS por adelantado
Valora esta pregunta


0