Autor
|
Tema: Ayuda con $_SESSION (Leído 3,332 veces)
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Buenas! Tengo un formulario que recoge los datos de los productos de el catalogo, estos se ingresan a la tabla Catalogo, la cual tiene los campos propietarioArticulo, etc etc.. todos funcionan bien, pero cuando trato de pasar el valor de $_SESSION['noUsuario'] es = 0.. pero no entiendo por que, en el login puse el siguiente script para ver si se guarda el valor de la sesion: if (isset($_SESSION['noUsuario'])) { echo "Usuario logged in ".($_SESSION['noUsuario']); exit; } Y me devuelve el valor de el usuario, en este caso admin, lo que no entiendo es por que si ahi si me pasa el valor, porque entonces $propietarioArticulo=($_SESSION['noUsuario']);en realidad es =''... Saludos
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
Shell Root
|
:http://yoyahack.blogspot.com/2010/06/empty-o-isset.html
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Gracias, pero si entiendo la diferencia, pero lo que pasa es que el valor si se pasa en la pag de login.php, es decir el valor si existe y esta definido, pero cuando paso a la pagina catalogo.php el valor ya no existe, me explico ??
Saludos
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
Dznp
Desconectado
Mensajes: 119
|
Si pasaras el login...
|
|
|
En línea
|
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
<?php include('conex.php'); $link=Conectarse(); $noUsuario=$_POST['noUsuario']; $password=$_POST['password']; $password=md5($password); $query= mysql_query("SELECT noUsuario,password FROM Usuarios WHERE noUsuario = '$noUsuario' AND password='$password'",$link) or die(mysql_error()); $data = mysql_fetch_array($query);
if (empty($noUsuario)) { echo ' <table width="70%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td bgcolor="#FFF"><br/><br/><br/>'; echo "<center><strong>Campos Usuario o Contraseña Incorrectos<br/>Por favor llene correctamente los campos. USER<br/><a href='javascript:history.go(-1)'> Atras</a></strong></center>";
echo '</td> </tr> </table><br/><br/><br/>'; mysql_close($link);
exit; }
// Si el campo Password esta vacio o no es igual a Consulta muestra mensaje de error elseif (empty($password) || ($data['password']!=$password)) { echo ' <table width="70%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td bgcolor="#FFF"><br/><br/><br/>'; echo "<center><strong>Campos Usuario o Contraseña Incorrectos<br/>Por favor llene correctamente los campos. PWD<br/><a href='javascript:history.go(-1)'> Atras</a></strong></center>";
echo '</td> </tr> </table><br/><br/><br/>'; mysql_close($link); exit;
// Si los campos son correctos se envia a la zona protegida. }else{ $query = mysql_query("SELECT noUsuario,password FROM Usuarios WHERE noUsuario = '".$noUsuario."' AND password='$password'",$link) or die(mysql_error()); $row = mysql_fetch_array($query); $_SESSION['noUsuario'] = $row['noUsuario'];
$_SESSION['password'] = $row['password'];
echo '<br /><br /><br />'; echo '<br/><br/><br/> <table width="70%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td bgcolor="#FFF">';
// Mensaje con nombre de Usuario
echo "<center><strong>".$row['noUsuario']."<br/><a href='javascript:history.go(-1)'> Atras</a></strong></center>";
echo '</td> </tr> </table><br/><br/><br/>'; mysql_close($link); exit; } ?> es este, bueno es el que valida el login xD
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
Dznp
Desconectado
Mensajes: 119
|
Perdoname que te diga pero... TOTALMENTE mal optimizado ese codigo. Sobre tu problema, no es necesario usar ( ) para poner una sesión. Eso puede ser el problema (aunque ni siquiera entendí cual era) proba esto. $propietarioArticulo=$_SESSION['noUsuario'];
|
|
|
En línea
|
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
haha si me imagino lo de el codigo, pero ya sabes uno aprende poco a poco y en cuanto a lo de "( )" lo puse porque antes lo tenia normal y en el editor me mostraba {session.noUsuario} y si le ponia las ( ) ya no lo mostraba.. pero de las dos maneras no funciono Estoy pensando en hacer una funcion la cual llamar en el header de la pag para comprobar si el usuario es visitiante o esta ya esta registrado, y desde ahi llamar a $_session['noUsuario'].. para tener la variable disponiblen en toda pagina que lo necesite.. que piensan? Saludos
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Ya encontre el error, no incluí session_start(); if(!isset($_SESSION['noUsuario'])||!isset($_SESSION['password'])) { header('Location: http://www.server.com/secure/login.php'); exit; } Duuuh, que despistado, saludos.
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
¿hay que proteger el $_SESSION['USUARIO'] ?
PHP
|
tecasoft
|
2
|
1,893
|
18 Marzo 2013, 13:59 pm
por tecasoft
|
|
|
Ayuda con $_SESSION
PHP
|
spysecurityca
|
4
|
1,928
|
26 Junio 2014, 23:09 pm
por MinusFour
|
|
|
Cerrar la $_session
PHP
|
yoelrodguez
|
5
|
2,943
|
14 Octubre 2016, 16:21 pm
por [u]nsigned
|
|
|
[Pregunta]: mejorar las $_SESSION'S
PHP
|
Leguim
|
1
|
1,870
|
7 Octubre 2019, 14:05 pm
por MinusFour
|
|
|
[Pregunta]: Comportamiento de las $_SESSION
PHP
|
Leguim
|
4
|
4,095
|
3 Agosto 2021, 04:47 am
por MinusFour
|
|