elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Ayuda con $_SESSION
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con $_SESSION  (Leído 3,352 veces)
mokoMonster


Desconectado Desconectado

Mensajes: 301


<? ...


Ver Perfil
Ayuda con $_SESSION
« en: 5 Agosto 2010, 01:41 am »

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
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Ayuda con $_SESSION
« Respuesta #1 en: 5 Agosto 2010, 01:47 am »

:http://yoyahack.blogspot.com/2010/06/empty-o-isset.html


En línea

Te vendería mi talento por poder dormir tranquilo.
mokoMonster


Desconectado Desconectado

Mensajes: 301


<? ...


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #2 en: 5 Agosto 2010, 01:52 am »

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 Desconectado

Mensajes: 119


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #3 en: 5 Agosto 2010, 02:12 am »

Si pasaras el login...  :silbar:
En línea

mokoMonster


Desconectado Desconectado

Mensajes: 301


<? ...


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #4 en: 5 Agosto 2010, 02:16 am »

<?php include('conex.php');
$link=Conectarse();
$noUsuario=$_POST['noUsuario'];
$password=$_POST['password'];
$password=md5($password);
$querymysql_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 Desconectado

Mensajes: 119


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #5 en: 5 Agosto 2010, 03:06 am »

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.

Código
  1. $propietarioArticulo=$_SESSION['noUsuario'];
En línea

mokoMonster


Desconectado Desconectado

Mensajes: 301


<? ...


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #6 en: 5 Agosto 2010, 20:08 pm »

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 :laugh:
En línea

"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual."
Lagrange
mokoMonster


Desconectado Desconectado

Mensajes: 301


<? ...


Ver Perfil
Re: Ayuda con $_SESSION
« Respuesta #7 en: 5 Agosto 2010, 21:38 pm »

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
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿hay que proteger el $_SESSION['USUARIO'] ?
PHP
tecasoft 2 1,922 Último mensaje 18 Marzo 2013, 13:59 pm
por tecasoft
Ayuda con $_SESSION
PHP
spysecurityca 4 1,939 Último mensaje 26 Junio 2014, 23:09 pm
por MinusFour
Cerrar la $_session
PHP
yoelrodguez 5 2,961 Último mensaje 14 Octubre 2016, 16:21 pm
por [u]nsigned
[Pregunta]: mejorar las $_SESSION'S
PHP
Leguim 1 1,893 Último mensaje 7 Octubre 2019, 14:05 pm
por MinusFour
[Pregunta]: Comportamiento de las $_SESSION
PHP
Leguim 4 4,122 Último mensaje 3 Agosto 2021, 04:47 am
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines