Foros del Web » Programando para Internet » PHP »

¿Como hacer que aparezca el nombre de usuario en la pagina?

Estas en el tema de ¿Como hacer que aparezca el nombre de usuario en la pagina? en el foro de PHP en Foros del Web. Tengo una pagina en que solamente acceden los usuarios con contraseña y quiero que el nombre de los usuarios aparezca en la pantalla: Ejemplo: bienvenido/a ...

  #1 (permalink)  
Antiguo 08/03/2008, 16:26
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
¿Como hacer que aparezca el nombre de usuario en la pagina?

Tengo una pagina en que solamente acceden los usuarios con contraseña y quiero que el nombre de los usuarios aparezca en la pantalla:
Ejemplo:
bienvenido/a (nombre de usuario)


Gracias
  #2 (permalink)  
Antiguo 08/03/2008, 16:43
Avatar de define  
Fecha de Ingreso: enero-2008
Mensajes: 100
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

:S donde esta el problema? el nombre de usuario que le has pasado a la db ara comprobar por, lo muestras en la pagina..., es decir, si en la pagina, identificar .php le has pasado soy blablabla, y se identifica, se la pasas a todas las deas, y ya esta... espero haberte servido de ayuda.
  #3 (permalink)  
Antiguo 08/03/2008, 18:04
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

El problema está, en que me aparece el nombre de usuario (nombre y apellido paterno) pero siempre el de una mismapersona, no me cambia de usuario, es decir no me identifica que usuario fue el que abrió sesión
  #4 (permalink)  
Antiguo 08/03/2008, 18:08
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

Mejor poné el código que estas usando para ver el error.
  #5 (permalink)  
Antiguo 08/03/2008, 18:29
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

$conexion = mysql_connect("localhost","usuario","password");

// seleccionamos la base de datos
mysql_select_db("bd", $conexion);


$sql = "SELECT nombre, apellido_paterno FROM usuarios";
$query = mysql_query($sql, $conexion);
$row = mysql_fetch_assoc($query);
$nom = $row['nombre'];
$apellp = $row['apellido_paterno'];{
echo "Bienvenid@ <strong>$nom $apellp</strong>, accediste a la zona de usuarios registrados";
}
mysql_close($conexion)
?>
  #6 (permalink)  
Antiguo 08/03/2008, 18:39
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

Te faltaría poner un WHERE.

$usuario = $_POST["usuario"];

$sql = "SELECT nombre, apellido_paterno FROM usuarios WHERE usuario=' $usuario'";
  #7 (permalink)  
Antiguo 08/03/2008, 18:52
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

hgp147

¿puedo poner eso aunque la sesion de login ya tiene un php llamado para controlar el acceso y contiene $email = $_POST['email'];?

¿podría volver a utilizar la misma variable?
  #8 (permalink)  
Antiguo 08/03/2008, 18:54
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

Ya lo intenté y si antes me mostraba el nombre del ultimo usuario de la tabla, aqui no me muestra nada
  #9 (permalink)  
Antiguo 08/03/2008, 18:59
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

comienza el script con una sesion

Código PHP:
<?

session_start
();

        
// esta es la variable de sesion que te dice quien se ha logueado $_SESSION['']
if (isset($_SESSION['la variable que uses para login'])) 
{
echo 
'Hola, ';
echo 
'<b>'.$_SESSION['username']. '</b>.';

    echo 
'<a href="salir.php">salir</a>';
    }


?>
  #10 (permalink)  
Antiguo 08/03/2008, 19:05
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

y para que desaparexca el user que actualmente esta logueado lo has de hacer salir

en el otro script te puse un enlace a salir.php que seria asi:

Código PHP:

<?php
session_start
();
// Borramos toda la sesion
session_destroy();
//con el siguiente script de jave rediriges a index por ejemplo
?>
<SCRIPT LANGUAGE="javascript">
location.href = "index.php";
</SCRIPT>
despues de clickar en salir desaparecera la sesion y el user ya no tendra la sesion iniciada
  #11 (permalink)  
Antiguo 08/03/2008, 19:09
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

jmarquezrave pone tu archivo donde haces el login
  #12 (permalink)  
Antiguo 08/03/2008, 19:09
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

tengo ya puesto eso
pero no es ese mi error, el error es que me aparece solamente el nombre de un usuario registrado, independientemente de que ingrese con otro nombre de usuario
  #13 (permalink)  
Antiguo 08/03/2008, 19:13
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

este es el form:

<form action="control.php" method="POST">
<div align="right">
<p>
<? if ($_GET["errorusuario"]=="si"){?>
<span class="Estilo1" style="color:#C10000">Datos incorrectos</span>
<? }else{ ?>
Introduce tu email y tu contraseña
<? } ?>
</p>
<p>Email: <input type="Text" name="email" class="Estilo38" size="25" />
</p>
<p>Contrase&ntilde;a: <input type="password" name="contrasena" class="Estilo38" id="password" size="18" maxlength="8"/>
<br>
<span class="Estilo38"><a href="form_rec_pass.php">&iquest;Olvidaste tu contrase&ntilde;a?</a></span></p>
<p><input name="Submit" type="submit" class="Estilo38" value="Login" />





este es el que controla y me comprueba si existe el usuario y el email:

<?php
// hacemos una conexion a la bd
$conexion = mysql_connect("localhost", "usuario", "password");

mysql_select_db("bd", $conexion);

$email = $_POST['email'];
$pass = $_POST['contrasena'];

//realizamos una consulta a la bd
$sql = "SELECT * FROM usuarios WHERE email='$email' && contrasena='$pass'" ;

//defino la sentencia
$result = mysql_query($sql,$conexion);

//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($result)!=0){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
session_register("autentificado");
$autentificado = "SI";
header ("Location: inicio.php");
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
}
mysql_free_result($result);
mysql_close($conexion);
?>





este es elmetodo include para todas las paginas (seuridad)

<?
//Inicio la sesión
session_start();

$old_sessionid = session_id();

session_regenerate_id();

$new_sessionid = session_id();

//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
if ($_SESSION["autentificado"] != "SI") {
//si no existe, envio a la página de autentificacion
header("Location: index.php");
//ademas salgo de este script
exit();
}
?>




y por ultimo este es el codigo que utilizo para las paginas seguras
<? include ("seguridad.php");?>

<?

$conexion = mysql_connect("localhost","corrient_jmr","740501") ;

// seleccionamos la base de datos
mysql_select_db("corrient_lefem", $conexion);


$sql = "SELECT nombre, apellido_paterno FROM usuarios";
$query = mysql_query($sql, $conexion);
$row = mysql_fetch_assoc($query);
$nom = $row['nombre'];
$apellp = $row['apellido_paterno'];{
echo "Bienvenid@ <strong>$nom $apellp</strong>, accediste a la zona de usuarios registrados";
}
mysql_close($conexion)
?>


espero alguno me pueda ayudar con esto
  #14 (permalink)  
Antiguo 08/03/2008, 19:24
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

el codigo parece estar bien

pero una cosa, tu ya te logueaste, has cerrado la sesion de ese usuario?

Para cerrar una sesion:

y para que desaparexca el user que actualmente esta logueado lo has de hacer salir

en el otro script te puse un enlace a salir.php que seria asi:


Código PHP:

<?php
session_start();
// Borramos toda la sesion
session_destroy();
//con el siguiente script de jave rediriges a index por ejemplo
?>
<SCRIPT LANGUAGE="javascript">
location.href = "index.php";
</SCRIPT>
despues de clickar en salir desaparecera la sesion y el user ya no tendra la sesion iniciada
  #15 (permalink)  
Antiguo 08/03/2008, 19:26
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

Y cambia session_start (); al principio del scrip

no se si influye pero yo lo tengo a si
  #16 (permalink)  
Antiguo 08/03/2008, 19:26
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

ya lo hice y me sigue saliendo asi
  #17 (permalink)  
Antiguo 08/03/2008, 19:28
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

pero no has de autentificar a si al user que entra y se loguea

y por ultimo este es el codigo que utilizo para las paginas seguras
<? include ("seguridad.php");?>

<?

$conexion = mysql_connect("localhost","corrient_jmr","740501") ;

// seleccionamos la base de datos
mysql_select_db("corrient_lefem", $conexion);


$sql = "SELECT nombre, apellido_paterno FROM usuarios";
$query = mysql_query($sql, $conexion);
$row = mysql_fetch_assoc($query);
$nom = $row['nombre'];
$apellp = $row['apellido_paterno'];{
echo "Bienvenid@ <strong>$nom $apellp</strong>, accediste a la zona de usuarios registrados";
}
mysql_close($conexion)
?>


a si no
  #18 (permalink)  
Antiguo 08/03/2008, 19:32
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

lamentablemente, me sigue saliendo el mismo usuario
  #19 (permalink)  
Antiguo 08/03/2008, 19:34
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

se autentifica a un usuario cuando se loguea nada mas,

si en index.php pones este codigo:

Código PHP:

<? 

session_start
(); 

        
// esta es la variable de sesion que te dice quien se ha logueado $_SESSION[''] 
if (isset($_SESSION['la variable que uses para login']))  

echo 
'Hola, '
echo 
'<b>'.$_SESSION['username']. '</b>.'

    echo 
'<a href="salir.php">salir</a>'
    } 


?> 

//y despues de logearse el usuario que se logueo aparecera el index.php
//como   Hola, user     salir

//y sali es el link que hace que abandone la sesion y no aparezca su nombre y haga que no pueda estar en la zona restringida.


//por ejemplo pon este codigo en la cabecera de la pagina protegida:

[PHP]
<?php 

session_start
();

if (isset(
$_SESSION['la variable que uses para login']))  

$user $_SESSION['username'];

header"Location: restingido.php ); // Te redirecciona a zona restringida

}else{
header( "
Locationindex.php ); //si no esta logeado te manda a index
}

?>
[/PHP]

Última edición por jaronu; 08/03/2008 a las 19:39
  #20 (permalink)  
Antiguo 08/03/2008, 19:37
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

y como deberia de hacerlo?
  #21 (permalink)  
Antiguo 08/03/2008, 19:38
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

que no lo hagas a si, de la forma que lo haces solo te aparece el que seleccionas en la base de datos
este script no lo uses;


Código PHP:

y por ultimo este es el codigo que utilizo para las paginas seguras
<? include ("seguridad.php");?>

<?

$conexion 
mysql_connect("localhost","corrient_jmr","740501") ;

// seleccionamos la base de datos
mysql_select_db("corrient_lefem"$conexion);


$sql "SELECT nombre, apellido_paterno FROM usuarios";
$query mysql_query($sql$conexion);
$row mysql_fetch_assoc($query);
$nom $row['nombre'];
$apellp $row['apellido_paterno'];{
echo 
"Bienvenid@ <strong>$nom $apellp</strong>, accediste a la zona de usuarios registrados";
}
mysql_close($conexion)
?>
no lo hagas asi, Hazlo como te digo, con el codigo que te puse mas arriba
  #22 (permalink)  
Antiguo 08/03/2008, 19:38
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

pero el session start() lo debo de poner dentro del seguridad.php, o lo pongo independientemente a cada pagina con acceso restringido?
  #23 (permalink)  
Antiguo 08/03/2008, 19:40
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

si pongo ese codigo que me envias, deberia de cambiar tambien el control.php?
  #24 (permalink)  
Antiguo 08/03/2008, 19:45
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

empecemos paso por paso vale?

pero olvidate del script que usas para reconocer al usuario que tienes ahora mismo.

despues del logueo redirecciona a la zona protegida y al comienzo d la pagina protegida pon:

Código PHP:

<?php  

session_start
(); 

if (isset(
$_SESSION['la variable que uses para login']))   
{  
$user $_SESSION['username']; 

header"Location: restingido.php ); // Te redirecciona a zona restringida 

}else{ 
header( "
Locationindex.php ); //si no esta logeado te manda a index 


?>
y para ver el nombre del usuario que se acaba de logear usa este otro codigo.

y luego me enseñas como lo has provado tu.

Código PHP:

<?  

session_start
();  

        
// esta es la variable de sesion que te dice quien se ha logueado $_SESSION['']  
if (isset($_SESSION['la variable que uses para login']))   
{  
echo 
'Hola, ';  
echo 
'<b>'.$_SESSION['username']. '</b>.';  

    echo 
'<a href="salir.php">salir</a>';  
    }  


?>
  #25 (permalink)  
Antiguo 08/03/2008, 19:49
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

es que tal y como lo tienes hecho hasta ahora, despues de logearse, si es correcto el login lo mandas al user a index.php.

pues si pones este codigo en index aparecera el usuario logueado

<?

session_start();

// esta es la variable de sesion que te dice quien se ha logueado $_SESSION['']
if (isset($_SESSION['la variable que uses para login']))
{
echo 'Hola, ';
echo '<b>'.$_SESSION['username']. '</b>.';

echo '<a href="salir.php">salir</a>';
}


?>
  #26 (permalink)  
Antiguo 08/03/2008, 19:59
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

ERROR descomunal, al cambiarle el codigo


no lo envío al index.php, lo envio a inicio.php, el orden es el siguiente:

index.php, control.php, seguridad.php (el cual va incluido en las cabezeras de las paginas protegidas, como include (seguridad.php) y a lo unltimo si esta autenticado lo envio a inicio.php
  #27 (permalink)  
Antiguo 08/03/2008, 20:00
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

he ido a la pagina y se veia bien al usuario registrado

se veia Bienvenid@user
  #28 (permalink)  
Antiguo 08/03/2008, 20:01
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

acabo de ver la pagina
y sale bien el user logueado

Bienbenid@user...
  #29 (permalink)  
Antiguo 08/03/2008, 20:01
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Mensajes: 83
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

pero te aparecia juan pepito, o te aparecia tu nombre y apellido, si no te registraste, hazlo con cualquier dato y veras que lo que pusiste como nombre y apellido siempre te aparece juan pepito
jajajaja
no se que hacer!!
  #30 (permalink)  
Antiguo 08/03/2008, 20:05
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: ¿Como hacer que aparezca el nombre de usuario en la pagina?

pero cual es tu problema ahora, si solo hacen falta tres paginas distintas para hacer todo esto

1- la pagina Index.php
2- la pagina php que procesa el login
3- paguna a la que se nos redirecciona al hacer login correcto inicio.php

cual es el problema?
venga aprovechate ahora que estoy inspirado y el niño duerme.
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 23:45.