PRoblema con php

cHiv0rz

Estoy haciendo una aplicacion de autentificación de usuarios con dreamweaver 8. El tema de la identificación por usuario ya lo tengo controlado(ya me loguea los usuarios y todo).El problema que tengo es que no se como hacer para que cuando te logueas con tu usario, vaya a una pagina determinada, es decir, cada usuario vaya a su pagina, para ver sus datos y eso. Alguna idea?

BlisZ

Header("Location: pagina.php");

cHiv0rz

pero al registrarse un usuario si esta en el index.php el login como lo enfoco a la pagina.php?

BlisZ

no acabo de entender

en teoria deberias tener un formulario de login (donde sea) cuyo action te lleve a la pagina del login, donde se comprueba que este todo bien, y en esa pagina donde se comprueba el login, si esta bien haces lo del header() a la pagina personal del usuario o donde quieras

te refieres a eso?

W

Mira te cuento como lo tengo yo.

Logueas al usuario en formulario.

Busco si la pass y el user coinciden

SELECT * FROM user WHERE (usr='chivorz') AND (pass='media-vida')

Esta mal -> A la calle (echo "Incorrecto")
Esta bien ->

Habiendo hecho esta consulta saco todos los datos del usuario y los paso a una variable por sesion.

$SESSION['login']=$resultado['login'];
$
SESSION['nombre']=$resultado['name'];
$SESSION['edad']=$resultado['age'];
$
SESSION['identify']='yes' <- Restringira las paginas para los usuarios logueados.

así con los datos.

luego hago que haya un enlace o con jscript una redireccion a una pagina (x ejemplo)

perfil.php

y en esta página recojo el valor del login

if(isset($SESSION['identify']) AND ($SESSION['identify']='yes')) <- Restringiendo la pagina solo a usuarios con $_SESSION['identify']=yes vamos a los logueados

pues luego simplemente hay que hacer una consulta a la base de datos con ese login (el cual recibes por $_SESSION['login'] ) y saco todos los datos

echo $resultado['name']
echo $resultado['age']

etc...

es mas o menos

BlisZ

no te hace falta el isset($_SESSION[identifiy]) porque en el mismo if compruebas que este en yes, y si esta en yes es porque existe

B

Es mejor poner el isset separado, para un futuro debug o simplemente para consumir menos recursos.

Usuarios habituales