Foros del Web » Programando para Internet » PHP »

Identificar Usuario, ir a la BD y sacarle su Nº ID

Estas en el tema de Identificar Usuario, ir a la BD y sacarle su Nº ID en el foro de PHP en Foros del Web. Buenos Dias foristas.. Bueno ando con una duda que me supera, yo tengo un sistema de registro de usuarios, en el cual tengo un perfil.php ...
  #1 (permalink)  
Antiguo 24/03/2007, 09:48
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Identificar Usuario, ir a la BD y sacarle su Nº ID

Buenos Dias foristas..
Bueno ando con una duda que me supera,
yo tengo un sistema de registro de usuarios, en el cual tengo un perfil.php que llamandolo /perfil.php?id=1 me abre el perfil del usuario con el ID 1.
Bueno, a lo que voy es como podria hacer para que cuando el usuario se loguee, le diga PERFIL y que "perfil" vaya a perfil.php?id=X siendo X el numero de ID de ese usuario..
se podria hacer esto??
no se si se entiende bien mi esplicacion...
saludos y muchas gracias..
MC
  #2 (permalink)  
Antiguo 24/03/2007, 09:59
Avatar de DeeR  
Fecha de Ingreso: diciembre-2003
Ubicación: Santiago
Mensajes: 520
Antigüedad: 20 años, 4 meses
Puntos: 17
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Bueno me imagino que ya sabes un poco sobre PHP y realizar consultas a mysql (que me imagino que es tu bd).

Una vez que el usuario se logeo, debes capturar el id del usuario de la tabla, segun tus habilidades con el lenguaje, lo podrias hacer en la primera consulta, si no, realiza otra consulta obteniendo el id
Código:
$sql="SELECT `id`FROM `pacientes`WHERE `user` = '".$usuario."' LIMIT 0 , 1";
Realizas la consulta, luego capturas el $id , y simplemente tienes que realizar un head localtion a la url que quieres redireccionar

Código PHP:
header("Location: http://tusitio.org/perfil.php?id=".$id); 
Saludos
  #3 (permalink)  
Antiguo 24/03/2007, 10:46
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Hola, gracias por tu respuesta...
necesitaria un poquito de ayuda con el header location..

hago al consulta en mi tabla users donde nick= &usuario

Código PHP:
$sql="SELECT `id`FROM `users`WHERE `nick` = '".$usuario."' LIMIT 0 , 1"
pero me pueden ayudar un poquito con el paso siguiente?
saludos y gracias de antemano!
MC
  #4 (permalink)  
Antiguo 24/03/2007, 12:56
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

El paso es basico McBlink, tan solo debes guardar el id del usuario que se loguea en una variable... en el ejemplo de Deer dicha variable es $id y es la que utiliza luego para el header Location.

Si deseas mas ayuda, ya deberias mostrar tu script de login.

Saludos
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #5 (permalink)  
Antiguo 24/03/2007, 13:18
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Gracias por responder...
aca dejo mi login.php

Código PHP:
<?
include('config.php'); //HAGO LA CONEXIONA LA BD

if(!isset($_SESSION[usuario]) ) 
{


echo 
'<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>'
;

}else{

modificar y añadir cosas
echo 'Bienvenido '.$_SESSION[usuario]; 
echo 
'<br>Tu level es '.$_SESSION[level]; 
if(
$_SESSION[level] == 1)
{

echo 
'<br><a href=paginaprivada.php>Ir a pagina privada</a>';
}

echo 
'<br><a href=logout.php>Salir</a>'

}




?>
Bueno, gracias y espro sus respuestas.
saludos!
MC
  #6 (permalink)  
Antiguo 24/03/2007, 13:31
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Y la instancia anterior(autentificar.php)? justo donde verificas el usuario y pass.. etc. Ahi es el momento de cargar la session con el id del usuario. Hecho esto, el siguiente paso es modificar un poco este archivo que mostras:

Código PHP:
<?
include('config.php'); //HAGO LA CONEXIONA LA BD

if(!isset($_SESSION[usuario]) ) 
{


echo 
'<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>'
;

}else{
         
$id $_SESSION["id"];  
         
header("Location: http://tusitio.org/perfil.php?id=".$id);  
}
?>
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #7 (permalink)  
Antiguo 24/03/2007, 13:49
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

ahh ok!
aca lo dejo. autentificar.php

Código PHP:
<?
include('config.php'); 

if( (
$_POST[nick] == ' ') or ($_POST[pass] == ' ') )
{
Header("Location: login.php"); 
}else{


$usuarios=mysql_query("SELECT * FROM user WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
if(
$user_ok mysql_fetch_array($usuarios)) 
{

session_register("usuario"); 
session_register("idusuario"); 
session_register("level"); /
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; 
$_SESSION[idusuario] = $user_ok["id"]; 
$_SESSION[level] = $user_ok["level"]; 
Header("Location: login.php"); //volvemos al login donde nos saldrá nuestro menú de usuario

}else{
echo 
'Nick y pass incorrectos';
}

}
?>
gracias!
  #8 (permalink)  
Antiguo 24/03/2007, 14:05
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Ahora, te das cuenta que ese dato que buscabas (el id) ya lo sabias?

Código PHP:
$_SESSION[idusuario] = $user_ok["id"]; 
Entonces, al codigo que coloque mas arriba solo habria que hacerle una pequeña modificación.

Si deseas que directamente aparezca el perfil:

Código PHP:
<?
include('config.php'); //HAGO LA CONEXIONA LA BD

if(!isset($_SESSION[usuario]) ) 
{


echo 
'<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>'
;

}else{
         
$id $_SESSION['idusuario'];  
         
header("Location: http://tusitio.org/perfil.php?id=".$id);  
}
/*
*
* Recuerda cambiar la direccion http://tusitio.org/perfil.php? por la tuya
*
*/
?>

Si deseas un link al perfil:

Código PHP:
<?
include('config.php'); //HAGO LA CONEXIONA LA BD

if(!isset($_SESSION[usuario]) ) 
{


echo 
'<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>'
;

}else{
         
$id $_SESSION['idusuario'];  
         
?>
         <a href="http://tusitio.org/perfil.php?id=<?php echo $id;?>">Perfil</a>
         <?php
}
/*
*
* Recuerda cambiar la direccion http://tusitio.org/perfil.php? por la tuya
*
*/
?>


Y ya que estamos, todo esto se puede obviar. Por que? porque la pagina de perfil tambien sera privada y pro consiguiente en ella tambien tendras los valores de la session... es decir que no necesitas pasarle por parametro el id (perfil?id=4), simplemente lo sacas de la sesion:

Código PHP:
<?php
$id 
$_SESSION['idusuario'];
?>
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #9 (permalink)  
Antiguo 24/03/2007, 14:53
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Bueno, probe el codigo, reemplaze mi login por este ultimo para que aparesca el link, y no me deja loguear, osea que directamente me aparece la palabra perfil y me lleva al ultimo usuario con el que me logue..
estuve provando dejar el login.php como te lo pase yo, agregando estas ultimas lineas que me distes pero me da error, seguramente por la ubicacion donde las pongo..
que me dices?
como puedo hacer para que primero me te abra el login y despues te tire el PERFIL para entrar..
saludos y gracias!!
MC
  #10 (permalink)  
Antiguo 24/03/2007, 15:00
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Bueno, Muchisimas gracias.. la verdad sos un grande!!
ya busque la solucion y andda de 10!!
cree enterperfil.php que se encarga de buscar la ID y llevarte al perfil..
saludos y te repito.. mil gracias!
MC
  #11 (permalink)  
Antiguo 24/03/2007, 18:16
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: Identificar Usuario, ir a la BD y sacarle su Nº ID

Se va encaminando el asundo

Saludos.
__________________
Federico.

Mi página: www.jourmoly.com.ar
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 09:27.