Foros del Web » Programando para Internet » PHP »

Autentificacion multi paginas...

Estas en el tema de Autentificacion multi paginas... en el foro de PHP en Foros del Web. Hola de nuevo, tengo que realizar un sistema de autentificacion con php y mysql , pero con la particularidad de que cada usuario una vez ...
  #1 (permalink)  
Antiguo 11/06/2007, 09:29
 
Fecha de Ingreso: febrero-2007
Mensajes: 11
Antigüedad: 17 años, 2 meses
Puntos: 0
Autentificacion multi paginas...

Hola de nuevo, tengo que realizar un sistema de autentificacion con php y mysql , pero con la particularidad de que cada usuario una vez haya introducido el login y el password correcto lo envie a una pagina web en concreto, no todos a la misma pagina/s,se agradeceria algun ejemplo,



GRACIAS MIL
  #2 (permalink)  
Antiguo 11/06/2007, 09:43
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Autentificacion multi paginas...

Pues el ejemplo no te lo puedo decir, pero te puedo decir como hacerlo, que cada usuario tenga un campo mas, que se llame, direccion (por ejemplo) y a la hora de logearlo, si es correcto, haces header(location: $Direccion_de_la_base_de_datos);
Espero que lo hallas entendido.

Un saludo
  #3 (permalink)  
Antiguo 12/06/2007, 01:46
 
Fecha de Ingreso: febrero-2007
Mensajes: 11
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Autentificacion multi paginas...

He probado lo de direccionar según el usuario pero no veo donde cometo el error.

pass.html (Formulario con dos textbox + un boton)

<form name="Frm" method="post" action="login.php" id="Form1">
<input type="text" id="Editbox1" name="login" value="">
<input type="password" id="Editbox2"
<input type="submit" id="Button1" name="Button1" value="Login"
</form>

login.php (php para login )

<?
$link=mysql_connect("XXX.X.XX.XXX", "XXXXXXX", "XXXXXXXX");
mysql_select_db("XXXXXXX",$link) OR DIE ("Error:Imposible Conectar con la Base de Datos");

if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
extract($_POST);
// recuperando el password de la tabla que corresponde al usuario
$sql = "select pwd from tbl_user where login='".$login."'";
$req = mysql_query($sql) or die('Error SQL !<br>'.$sql.'<br>'.mysql_error());

$data = mysql_fetch_assoc($req);

if($data['pwd'] != $pass) {
include('pass.html'); // Formulario identificacion
exit;
}
else {
session_start();
$_SESSION['login'] = $login;
header(location:$web);// Direccion del usuario introducida en la base de datos
// NO SÉ Y EL HEADER ESTA EN EL SITIO CORRECTO, PERO ME DA ERROR
}
}
else {
include('pass.html'); // formulario de identificacion.
exit;
}
?>

verif.php incluido en las paginas protegidas

<?
session_start();
if(!isset($_SESSION['login'])) {
echo 'No está autorizado para entrar en esta zona.';
include('pass.html');
exit;
}
?>

Base de datos

CREATE TABLE `tbl_user` (
`id` int(11) NOT NULL auto_increment,
`pseudo` varchar(63) NOT NULL default '',
`login` varchar(8) NOT NULL default '',
`pwd` varchar(8) NOT NULL default '',
`web` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `ID_2` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;


Gracias
  #4 (permalink)  
Antiguo 12/06/2007, 08:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: Autentificacion multi paginas...

No veo donde declaras $web, y segundo estas escribiendo mal el header debe de ser asi:
Código PHP:
header("Location: $web");// Direccion del usuario introducida en la base de datos 
  #5 (permalink)  
Antiguo 14/06/2007, 00:50
 
Fecha de Ingreso: febrero-2007
Mensajes: 11
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Autentificacion multi paginas...

Donde debo declar la variable $web, no se recupera de la base de datos del campo "web" ?? ???

GatorV
Código HTML:
 No veo donde declaras $web


Saludos
  #6 (permalink)  
Antiguo 14/06/2007, 06:50
Avatar de DjFaramir  
Fecha de Ingreso: febrero-2003
Ubicación: La Plata, Buenos Aires, Argentina
Mensajes: 131
Antigüedad: 21 años, 2 meses
Puntos: 0
Re: Autentificacion multi paginas...

la variable $web no se te genera automaticamente, la tenes que usar como la password... $data["web"];... y corregir el Header a como te dijo Gator...
__________________
See you... y Tolkien... mucho Tolkien...
  #7 (permalink)  
Antiguo 14/06/2007, 07:28
 
Fecha de Ingreso: febrero-2007
Mensajes: 11
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Autentificacion multi paginas...

La he declaro pero me sigue sin funcionar ,ayudaaa...


Gracias



Código HTML:
pass.html (Formulario con dos textbox + un boton)

<form name="Frm" method="post" action="login.php" id="Form1">
<input type="text" id="Editbox1" name="login" value="">
<input type="password" id="Editbox2" 
<input type="submit" id="Button1" name="Button1" value="Login" 
</form>

login.php (php para login )

<?
$link=mysql_connect("XXX.X.XX.XXX", "XXXXXXX", "XXXXXXXX");
mysql_select_db("XXXXXXX",$link) OR DIE ("Error:Imposible Conectar con la Base de Datos");

if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
extract($_POST);
// recuperando el password de la tabla que corresponde al usuario
$sql = "select pwd from tbl_user where login='".$login."'";
$req = mysql_query($sql) or die('Error SQL !<br>'.$sql.'<br>'.mysql_error());

$data = mysql_fetch_assoc($req);


$web=['web'] ; // [B]AQUI RECUPERO LA DIRECCION DE LA PAGINA WEB[/B]



if($data['pwd'] != $pass) {
include('pass.html'); // Formulario identificacion
exit;
}
else {
session_start();
$_SESSION['login'] = $login;
header("Location: $web");// Direccion del usuario introducida en la base de datos

} 
}
else {
include('pass.html'); // formulario de identificacion.
exit;
}
?>

verif.php incluido en las paginas protegidas

<?
session_start();
if(!isset($_SESSION['login'])) {
echo 'No está autorizado para entrar en esta zona.';
include('pass.html');
exit;
}
?>

Base de datos

CREATE TABLE `tbl_user` (
`id` int(11) NOT NULL auto_increment,
`pseudo` varchar(63) NOT NULL default '',
`login` varchar(8) NOT NULL default '',
`pwd` varchar(8) NOT NULL default '',
`web` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `ID_2` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
Gracias
  #8 (permalink)  
Antiguo 14/06/2007, 07:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: Autentificacion multi paginas...

Código PHP:
$web=['web'
Eso esta mal, debe de ser asi:
Código PHP:
$web=$data['web']; 
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 15:03.