Foros del Web » Programando para Internet » PHP »

no reconoce Id del usuario

Estas en el tema de no reconoce Id del usuario en el foro de PHP en Foros del Web. buenas tengo dos códigos. en el primero el usuario que se loguea en la web es identificado y en el segundo una vez captada su ...
  #1 (permalink)  
Antiguo 28/02/2010, 09:06
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
no reconoce Id del usuario

buenas
tengo dos códigos. en el primero el usuario que se loguea en la web es identificado y en el segundo una vez captada su id de usuario le devuelve la información de su perfil almacenada en la bbdd. el caso es que me identifica la id correctamente (www.misitio.com/perfil.php?id=x) pero el archivo perfil.php me dice que la id seleccionada no existe. me está volviendo loco este tema . ayuda por favor!!

gracias a todos

el autentificar.php es:

Código PHP:
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if( ($_POST[nick] == ' ') or ($_POST[pass] == ' ') )//comprobamos que las variables enviadas por el form de login.php tienen contenido
{
Header("Location: login.php"); //estan vacías, volvemos al index
}else{

//comprobamos en la db si existe ese nick con esa pass
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
if(
$user_ok mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
{

session_register("usuario"); //registramos la variable usuario que contendrá el nick del user
session_register("idusuario"); //registramos la variable idusuario que contendrá la id del user
//session_register("level"); //registramos la variable level que contendrá el level del user
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; //damos el nick a la variable usuario
$_SESSION[idusuario] = $user_ok["id"]; //damos la id del user a la variable idusuario
//$_SESSION[level] = $user_ok["level"]; //damos el level del user a la variable level

$id $user_ok["id"];  
         
header("Location: http://www.misitio.com/perfil.php?id=".$id);  
}


else{
echo 
'Nick y pass incorrectos';
}

}
?>
el código para perfil.php es:

Código PHP:
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db y la sesión

if(isset($_GET['id']))
{
echo 
'no se ha seleccionado ninguna id'//no han seleccionado ninguna id,
}else{

//comprobamos si esa id existe
$user=mysql_query("SELECT * FROM users WHERE id='$id' ");
if(
$user_ok=mysql_fetch_array($user) )
{
//todo comprobado, ahora solo falta mostrar los datos
echo 'Usuario <b>'.$user_ok["nick"].'</b><br>';
echo 
'<br>Email: <a href="mailto:'.$user_ok["email"].'">'.$user_ok["email"].'</a><br>';

//sacamos la fecha de registro mediante la funcion date
$fecha=date("d.m.Y - H:i"$user_ok["fecha"]);
echo 
'Fecha de registro: '.$fecha.'<br>';

//por último mostramos el rollo
echo 'Rollo:<br>'.$user_ok["mensaje"];


}else{

echo 
'La id seleccionada no existe';

}

}
?>
  #2 (permalink)  
Antiguo 28/02/2010, 11:06
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Pregunta Respuesta: no reconoce Id del usuario

isset sirve para "en caso tenga valor", para condicionar si no contiene valor debes usar empty
Código PHP:
if(empty($_GET['id'])) 
echo 
"no tiene valor ID";
else
echo 
"ID tiene valor"
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #3 (permalink)  
Antiguo 28/02/2010, 11:33
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por hector2c Ver Mensaje
isset sirve para "en caso tenga valor", para condicionar si no contiene valor debes usar empty
Código PHP:
if(empty($_GET['id'])) 
echo 
"no tiene valor ID";
else
echo 
"ID tiene valor"
gracias por tu colaboración pero me devuelve el siguiente error a la hora de hacer login

Not Found
The requested URL /perfil.php?id=6 was not found on this server.
  #4 (permalink)  
Antiguo 28/02/2010, 11:36
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: no reconoce Id del usuario

ese error te aparece al momento de darle login... el error no es en perfil.php, el mensaje dice que no se encontro tal direccion, por que usas header("Location: http://www.misitio.com/perfil.php?id=".$id); , intenta con un simple header("Loation: perfil.php?id=".$id);

recuerda que al hacer un header location no debe existir código html generado en la parte superior
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #5 (permalink)  
Antiguo 28/02/2010, 11:39
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: no reconoce Id del usuario

Y el error es claro, esta buscando un archivo que se llame perfil.php?id=6, el cual obviamente no existe...

Que valor tiene el atributo action de tu formulario de login?
__________________
HV Studio
Diseño y desarrollo web
  #6 (permalink)  
Antiguo 28/02/2010, 11:46
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por jackson666 Ver Mensaje
Y el error es claro, esta buscando un archivo que se llame perfil.php?id=6, el cual obviamente no existe...

Que valor tiene el atributo action de tu formulario de login?
el valor es autentificar.php
  #7 (permalink)  
Antiguo 28/02/2010, 11:47
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por hector2c Ver Mensaje
ese error te aparece al momento de darle login... el error no es en perfil.php, el mensaje dice que no se encontro tal direccion, por que usas header("Location: http://www.misitio.com/perfil.php?id=".$id); , intenta con un simple header("Loation: perfil.php?id=".$id);

recuerda que al hacer un header location no debe existir código html generado en la parte superior
sigue dando el mismo error....
  #8 (permalink)  
Antiguo 28/02/2010, 11:49
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: no reconoce Id del usuario

chema33 estas trabajando localmente o en un hosting real???
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #9 (permalink)  
Antiguo 28/02/2010, 11:51
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por hector2c Ver Mensaje
chema33 estas trabajando localmente o en un hosting real???
en un hosting real
  #10 (permalink)  
Antiguo 28/02/2010, 11:52
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: no reconoce Id del usuario

O sea, a ver si entiendo...
Pones el nombre de usuario y clave en tu formulario de login que tiene como action "autentificar.php".
Una vez que envias el formulario ahi, consultas a la base por esos datos, si esta todo ok, redireccionas a perfil.php pasandole por url el parametro "id"??
__________________
HV Studio
Diseño y desarrollo web
  #11 (permalink)  
Antiguo 28/02/2010, 11:54
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

de todas maneras sabrían ustedes de algún código que funcione¿? porque he probado cientos y todos dan errores similares...
  #12 (permalink)  
Antiguo 28/02/2010, 11:55
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por jackson666 Ver Mensaje
O sea, a ver si entiendo...
Pones el nombre de usuario y clave en tu formulario de login que tiene como action "autentificar.php".
Una vez que envias el formulario ahi, consultas a la base por esos datos, si esta todo ok, redireccionas a perfil.php pasandole por url el parametro "id"??
esa es la idea...
  #13 (permalink)  
Antiguo 28/02/2010, 11:59
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: no reconoce Id del usuario

Entonces tenes un error de sintaxis... Proba con estos dos archivos

Código PHP:
<?php
$id 
6;
header("location:otro.php?id=$id");
?>
otro.php
Código PHP:
<?php
echo $_GET['id'];
?>
Al 1ro ponele el nombre que quieras, al segundo "otro.php" si no te anda, no se que decirte

OBVIAMENTE que ambos en la misma carpeta...
__________________
HV Studio
Diseño y desarrollo web
  #14 (permalink)  
Antiguo 28/02/2010, 12:04
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por jackson666 Ver Mensaje
Entonces tenes un error de sintaxis... Proba con estos dos archivos

Código PHP:
<?php
$id 
6;
header("location:otro.php?id=$id");
?>
otro.php
Código PHP:
<?php
echo $_GET['id'];
?>
Al 1ro ponele el nombre que quieras, al segundo "otro.php" si no te anda, no se que decirte

OBVIAMENTE que ambos en la misma carpeta...
sí pero lo que quiero es que me al identificarse ese usuario me devuelva todos los parámetros insertados en su bbdd, creo que con lo que me dices lo único que consigo es que acepte que hay un usuario cuya id es 6
  #15 (permalink)  
Antiguo 28/02/2010, 12:20
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: no reconoce Id del usuario

........ Hay veces que no puedo creer las respuestas ........

Es solo de prueba lo que te puse! Para ver de que no te estes equivocando en alguna parte de tu codigo! Si no funciona eso que te pase, el problema es otro!!!!!!!

Ademas, porque no usas sesiones? no podrias guardar ese id en el array $_SESSION??
__________________
HV Studio
Diseño y desarrollo web
  #16 (permalink)  
Antiguo 28/02/2010, 15:54
 
Fecha de Ingreso: febrero-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: no reconoce Id del usuario

Cita:
Iniciado por jackson666 Ver Mensaje
........ Hay veces que no puedo creer las respuestas ........

Es solo de prueba lo que te puse! Para ver de que no te estes equivocando en alguna parte de tu codigo! Si no funciona eso que te pase, el problema es otro!!!!!!!

Ademas, porque no usas sesiones? no podrias guardar ese id en el array $_SESSION??
perdona jackson666 por mi ignorancia.. jejej... he hecho lo que me dijiste y funciona perfectamente así que el error tiene que estar en otra parte...

Última edición por chema33; 28/02/2010 a las 16:10

Etiquetas: reconoce, usuarios
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 09:51.