PHP - Mostrar datos Sesion

   
Vista:
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 07/08/2016 23:44:36
Buenas, hace poco empece a implementar logins y resgistros a una pagina web (recibi mucha ayuda por aca ) y ahora desearia que cuando el usuario loggeado le de click al boton de su perfil, la la tabla de la pagina de perfil le muestre sus datos, los cuales estan almacenados en Oracle 11g, el problema es que esta vez no se como hacer eso, he intentado varias formas y ninguna me ha servido, espero que me puedan ayudar.
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip

Mostrar datos Sesion

Publicado por kip (571 intervenciones) el 08/08/2016 00:50:59
Hola, podrias crear un script que obtenga mediante GET el id del usuario y dependiendo de aquel valor muestre los datos del usuario con una consulta.

1
<a href="perfil.php?id=<?=$_SESSION['usuario_id']?>">Click aquí</a>

Seria el boton que envie los datos al script 'perfil.php', lo demas creo que ya deberias entenderlo.

Nos avisas si tienes alguna duda.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 00:57:27
buenas Kip, eso quiere decir que el script tengo que hacerlo en el mismo archivo en el que se encuentra el boton? el GET exactamente como buscaria el id? en este caso el nickname $_GET[ ' ' ] se que la sintaxis es asi, pero cual es el valor que coloco adentro seria la sesion??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Mostrar datos Sesion

Publicado por kip (571 intervenciones) el 08/08/2016 01:17:18
No, aquel boton iria en otro lugar, ya que este te llevara al perfil.

1
2
3
4
5
6
7
<?php
 
$id_user = $_GET['id_user'];
 
$query = "SELECT nombre, apellido FROM users WHERE id = '$id_user'";
 
    // ejecutas la query

El script donde se mostrar el perfil deberia obtener los datos de esa forma.

Y el boton que enviara los datos a ese script es como te lo postee arriba:

1
<a href="perfil.php?id_user=<?=$_SESSION['usuario_id']?>">Click aquí</a>

Fijate que coloco la variable sesion del id del usuario que debe almacenarse al inicar sesion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 01:55:13
ok entendi, pero me quedo una duda, tu colocaste esto
1
$id_user = $_GET['id_user'];
mi duda es ese 'id_user' que esta dentro del GET, es el nombre de la columna en la base de datos o algo as? eso no me queda bien claro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Mostrar datos Sesion

Publicado por kip (571 intervenciones) el 08/08/2016 02:01:18
Aquel valor es la variable que envias mediante URL, desde el boton:

1
<a href="perfil.php?id_user=<?=$_SESSION['usuario_id']?>">Click aquí</a>

Si te fijas bien luego del ? le sigue la variable, y la variable GET la recupera, pasate por estos enlaces para tener mas clara la duda.

http://codehero.co/php-desde-get-post/
http://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=577:get-php-recuperar-datos-de-formularios-html-pedir-datos-ejemplos-y-ejercicios-resueltos-cu00833b&catid=70:tutorial-basico-programador-web-php-desde-cero&Itemid=193
http://www.mundogeek.com/programacion/53-php/240-manejo-de-post-get-y-request
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 02:33:56
Mira si tienes razon, no me habia fijado bien , revise los enlaces y muchas dudas me quedaron claras, pero hay algo que no entendi, en los enlaces muestran como traer el dato (os) estando en un mismo formulario, pero aplicado a mi caso como seria ya que no lo estoy trayendo de un formulario sino de una sesion, tendria que poner todos los datos que quiero obtener aca :
1
<a href="perfil.php?id_user=<?=$_SESSION['usuario_id']?>">Click aquí</a>
??

esto es lo que hice de codigo basado en los enlaces que me diste
Boton
1
echo "<a href='Perfil.php'?nickname&nombre&apellido&descripcion=<?=$_SESSION['session_username']?><button class='submit' type='submit' name='submit-perfil'>Bienvenido: ".$_SESSION['session_username']."</button></a>";

Script en la pagina de perfil
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
session_start();
error_reporting(0);
 
$varSesion = $_SESSION['session_username'];
$conn = oci_connect('PROYECTO','oracle2016','localhost/XE');
$sql = "SELECT NOMBRE, APELLIDO, NICKNAME, DESCRIPCION FROM USUARIO WHERE NICKNAME = '$id'";
$stmt = oci_parse($conn, $sql);
oci_execute($stmt);
 
$nombre = htmlspecialchars($_GET['nombre']);
$apellido = htmlspecialchars($_GET['apellido']);
$nickname = htmlspecialchars($_GET['nickname']);
$descripcion = htmlspecialchars($_GET['descripcion']);
 
 
?>

Indicame si voy en la direccion correcta por que lo hago asi y la pagina en la que esta el boton me despliega este error

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Mostrar datos Sesion

Publicado por kip (571 intervenciones) el 08/08/2016 02:55:50
Estas mas o menos por el camino correcto, mira te dejare algo para que te guies:

El boton solo enviara algun valor como parametro que identifique al usuario, recomiendo el id:

1
echo "<a href='Perfil.php?nickname='.$_SESSION['session_username']'.</a>";

Luego en el script perfil.php recibes este valor y ejecutas una consulta para traer todos los datos que quiereas mostrar en el perfil, y aquella variable $nickname es el valor que colocas en el tag <a></a>.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
error_reporting(0);
 
$nickname = $_GET['nickname'];
 
$conn = oci_connect('PROYECTO','oracle2016','localhost/XE');
$sql = "SELECT NOMBRE, APELLIDO, NICKNAME, DESCRIPCION FROM USUARIO WHERE NICKNAME = '$nickname'";
$stmt = oci_parse($conn, $sql);
oci_execute($stmt);
 
while (($row = oci_fetch_assoc($stmt)) != false) {
	echo "Bienvenido <b>".$row['NICKNAME']."</b></br>";
    echo "Este es el nombre con el que te registraste ".$row['NOMBRE']."</br>";
    echo "Este es el apellido con el que te registraste ".$row['APELLIDO']."</br>";
    echo "Descripcion ".$row['DESCRIPCION']."</br>";
}
?>

No necesitas ningun submit ya que la variable la envias por la URL!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 03:37:14
Me alegra saber que no estaba tan perdido jeje, pero aun me sigue mandando el mismo error
"Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)"

yo uso un submit por motivos del diseño de la pagina
cuando el usuario inicia sesion, se añade el boton que trae el nombre de usuario que es el que lo redirige al perfil
2016-08-07-19_29_50-Inicia-Sesion


aca los codigos:

validacion
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<div class="form-container_2" align="center">
						<div>
							<?php
								if(!isset($varSesion)){
 
									echo "<a href='Reg-Form.php'><button class='submit' type='submit' name='submit'>Registrate Aca !</button></a>";
									echo "<a href='Log-Form.php'><button class='submit' type='submit' name='submit'>Inicia Sesion !</button></a>";
 
								}
								else{
echo "<a href=Perfil.php?nickname='.$_SESSION['session_username']'.<button class='submit' type='submit' name='submit-perfil'>Bienvenido: ".$_SESSION['session_username']."</button></a>";
									echo "<a href='Mensajes.php'><button class='submit' type='submit' name='submit'>Mensajeria</button></a>";
									echo "<a href='Logout.php'><button class='submit' type='submit' name='submit'>Cerrar Sesion</button></a>";
 
 
								}
 
 
 
								}
							?>
 
 
 
						</div>
					</div>
el error lo manda justo en la linea donde se envia el nickname del usuario

Perfil
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<table>
	<thead>
 
	<tr>
		<th colspan="2">
	Datos De Usuario
		</th>
 
 
	</tr>
	</thead>
<?php
 
while(($row = oci_fetch_assoc($stmt)) != FALSE){
 
 
	echo"<tbody>
		<tr>
			<td>Nombre Usuario</td>
			<td>".$row['NOMBRE']."</td>
			
		</tr>
		<tr class="alt">
			<td>Apellido</td>
			<td>".$row['APELLIDO']."</td>
			
		</tr>
		<tr>
			<td>Nickname</td>
			<td>".$row['NICKNAME']."</td>
			
		</tr>
		<tr class="alt">
			<td>E-Mail</td>
			<td>".$row['EMAIL']."</td>
			
			
		</tr>
		<tr >
			<td>Descripcion</td>
			<td>".$row['DESCRIPCION']."</td>
			
		</tr>
		<tr class='alt'>
			<td>Cambiar Contraseña</td>
			<td class='form-container_2'><button class='submit' type='submit' name='submit'>Cambiar</button>
			</td>
			
		</tr>
		<tr>
			<td>Editar Perfil</td>
			<td class='form-container_2' ><button class='submit' type='submit' name='submit'>Editar Perfil</button>
			</td>
			
		</tr>
		</tbody>";
		?>
		</table>

dime si hay algun error aparte del que la pagina ya manda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 04:15:53
creo que ya lo corregi, por que ya no me manda ningun error, pero aun asi, cuando lo redirecciona a perfil,php , el la pagina no salen los datos de usuario

aca el codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<table>
	<thead>
 
	<tr>
		<th colspan="2">
	Datos De Usuario
		</th>
 
 
	</tr>
	</thead>
<?php
 
while(($row = oci_fetch_assoc($stmt)) != FALSE){
 
 
	echo"<tbody>
		<tr>
			<td>Nombre Usuario</td>
			<td>".$row['NOMBRE']."</td>
			
		</tr>
		<tr class='alt'>
			<td>Apellido</td>
			<td>".$row['APELLIDO']."</td>
			
		</tr>
		<tr>
			<td>Nickname</td>
			<td>".$row['NICKNAME']."</td>
			
		</tr>
		<tr class='alt'>
			<td>E-Mail</td>
			<td>".$row['EMAIL']."</td>
			
			
		</tr>
		<tr >
			<td>Descripcion</td>
			<td>".$row['DESCRIPCION']."</td>
			
		</tr>
		<tr class='alt'>
			<td>Cambiar Contraseña</td>
			<td class='form-container_2'><button class='submit' type='submit' name='submit'>Cambiar</button>
			</td>
			
		</tr>
		<tr>
			<td>Editar Perfil</td>
			<td class='form-container_2' ><button class='submit' type='submit' name='submit'>Editar Perfil</button>
			</td>
			
		</tr>
		</tbody>";
		}?>
		</table>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 08/08/2016 08:20:38
buenas kip, ya logre que funcionara, pero el problema que tengo ahora es que solo me manda los datos si mando la variable desde una url, si trato de hacerlo desde la comprobacion del boton no me manda nad o me desaparece filas de la tabla

aca el codigo del boton (linea 9)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
	if(!isset($varSesion)){
 
	echo "<a href='Reg-Form.php'><button class='submit' type='submit' name='submit'>Registrate Aca !</button></a>";
	echo "<a href='Log-Form.php'><button class='submit' type='submit' name='submit'>Inicia Sesion !</button></a>";
 
	}
	else{
echo "<a href='Perfil.php'?'nickname=' ".$_SESSION['session_username']."'><button class='submit' type='submit' name='submit'>Bienvenido: ".$_SESSION['session_username']."</button></a>";
	echo "<a href='Mensajes.php'><button class='submit' type='submit' name='submit'>Mensajeria</button></a>";
	echo "<a href='Logout.php'><button class='submit' type='submit' name='submit'>Cerrar Sesion</button></a>";
 
 
	}
?>

y aca el de la url

1
<a href="perfil.php?nickname=<?=$_SESSION['session_username']?>">click</a>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Mostrar datos Sesion

Publicado por kip (571 intervenciones) el 09/08/2016 14:30:48
Hazlo asi:

1
echo "<a href='Perfil.php?nickname=".$_SESSION['session_username']."'><button class='submit' type='submit' name='submit'>Bienvenido: ".$_SESSION['session_username']."</button></a>";

O tal vez asi:

1
echo '<input class="submit" type="button" name="submit" value="Bienvenido '.$_SESSION['session_username'].'" onclick="window.location.href=\'Perfil.php?nickname='.$_SESSION['session_username'].'\';"/>'

Nos cuentas si funciono.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Garen

Mostrar datos Sesion

Publicado por Garen (28 intervenciones) el 14/08/2016 03:24:06
Perdon por la tardanza en responder jeje, gracias pero ya lo hice de otra forma, pero igual probe esa y funciono gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar