• Martes 16 de Abril de 2024, 00:05

Autor Tema:  Problema Con Variables De Sesion  (Leído 4978 veces)

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Problema Con Variables De Sesion
« en: Martes 18 de Septiembre de 2007, 11:40 »
0
Estoy empezando a tocar  el mundo de las sesiones, que lo veo muy util.

Mi problema es que no consigo pasar las variables de sesion de una pagina a otra.

Tengo 3 paginas:

Cabecera.php es como la principal. En ella tengo
Citar
<?session_start();
include("./php/config.php");
include("./php/funciones.php");?>

config.php es donde inicializo las variables globales y los datos de la base de datos
Citar
<?
if (!isset($HTTP_SESSION_VARS['TipoUsuario'])){
  $HTTP_SESSION_VARS['Conectado']="no";
  $HTTP_SESSION_VARS['Usuario']="Anonimo";
  $HTTP_SESSION_VARS['TipoUsuario']="Anonimo";
}

Y en funciones.php es dnd tengo que modificar las variables
Citar
.............
.............
.............
if ( ($Registro['Contrasenia'] == $Contrasenia) && ($Registro)){
     
   $HTTP_SESSION_VARS['Conectado']="si";
   $HTTP_SESSION_VARS['Usuario']=$Nick;
   $HTTP_SESSION_VARS['TipoUsuario']=$Registro['TipoUsuario'];
}
............
............
............

El problema radica entre funciones.php. Lo que pasa es que las variables Conectado, Usuario, TipoUsuario, no existieran como si se crearan de nuevo y luego no me pasan los valores a cabezera.php

Los valores que recojo en cabezera.php son los que obtuve en config.php los de inicializacion y no los de funciones.php

Los valores finales son:
'Conectado'="No";
'Usuario'="Anonimo";
'TipoUsuario'="Anonimo";

En vez de:
'Conectado'="si";
'Usuario'=$Nick;
'TipoUsuario'=$Registro['TipoUsuario'];

Como si faltase conocetar  cabezera.php con funciones.php

zaida20

  • Miembro MUY activo
  • ***
  • Mensajes: 213
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #1 en: Martes 18 de Septiembre de 2007, 11:55 »
0
Hola:

aquí te dejo un link, espero que te sirva de algo y te soluciones alguna dudilla.

SAludos   :hola:
---- Las oportunidades que se te presentan son las que son y ellas te llevarán a la felicidad ----

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #2 en: Martes 18 de Septiembre de 2007, 12:32 »
0
Gracias Zaida20.

Hay 2 cosas que tampoco entiendo muy bien. la variable register_globals. Segun en que servidor en que este estara activada o desactivada

Osea que mi pagina no valdría para todo los servidores. Pero todas las paginas de mis amigos no han recatado en esta opcion y simplemente han utilizado  $HTTP_SESSION_VARS, osea que si ellos solo utilizan esto pues se supone que yo tambien.

Si utilizas $HTTP_SESSION_VARS se supone que no debes registar cada variable que con poner eso ya quedan disponibles las varibles y no tienes porque session_register(). Pero claro siempre desde el punto de vista que resgister_globals este a off.

Suponiendo que register_globals este a off mis variables de sesion se tendrian que poder utilizar en las diferentes paginas, pero no es asi y no.

Toy hecho un lio.

zaida20

  • Miembro MUY activo
  • ***
  • Mensajes: 213
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #3 en: Martes 18 de Septiembre de 2007, 14:06 »
0
Hola, me encantaría ayudarte pero creo que soy tan nueva en ésto de las sesiones como tu, y la verdad que yo tampoco me aclaro mucho. Por eso te puesto el link por si te ayudaba

Siento no poder ayudarte  :( , saludos :hola:
---- Las oportunidades que se te presentan son las que son y ellas te llevarán a la felicidad ----

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #4 en: Martes 18 de Septiembre de 2007, 19:13 »
0
Deberías poner el session_start(); no solo en cabecera.php sino también en config.php y en funciones.php antes de trabajar con $HTTP_SESSION_VARS.

Salu2,
Avalon

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #5 en: Miércoles 19 de Septiembre de 2007, 09:18 »
0
Muchas Gracias Avalon. Esa era mi duda de hoy.

Veras yo de php acabo de empezar y no lo domino muy bien, pero tengo 4 sitios web muy muy completos de mis amigos y me estan sirviendo de mucha mucha ayuda, junto a la cantidad de paginas que hay sobre todas las funciones.

Una dudita rapida sesion_start() lo tengo que poner entodas mis paginas? o en cuales si y en cuales no?

zaida20

  • Miembro MUY activo
  • ***
  • Mensajes: 213
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #6 en: Miércoles 19 de Septiembre de 2007, 09:56 »
0
Hola otra vez Ferdinandum:

Citar
Una dudita rapida sesion_start() lo tengo que poner entodas mis paginas? o en cuales si y en cuales no?


Yo en las pocas ocasiones que he utilizado las sesiones (por ahora), he colocado session_start() en todos los archivos php donde quiero que se vaya guarando la sesión, es decir si un archivo sólo contiene código html no lo he colocado.
No se si así estará bien,  pero hoy por hoy me ha funcionado en las cosillas que he realizado.

Saludos  :hola:
---- Las oportunidades que se te presentan son las que son y ellas te llevarán a la felicidad ----

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #7 en: Miércoles 19 de Septiembre de 2007, 10:21 »
0
Ok, hare eso lo colocare en todos las paginas php.

Ojala que funcione.  Gracias por todo.

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #8 en: Miércoles 19 de Septiembre de 2007, 10:25 »
0
Cita de: "Ferdinandum"
Una dudita rapida sesion_start() lo tengo que poner entodas mis paginas? o en cuales si y en cuales no?
En todas en las que trabajes con $HTTP_SESSION_VARS

Salu2,
Avalon

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #9 en: Miércoles 19 de Septiembre de 2007, 12:34 »
0
Todabia me falta algo:

He puesto echos donde utilizo $HTTP_SESSION_VARS y este es el resultado

Al empezar: >>Pag  config.php<<
Citar
conectado:no
usuario:Anonimo
tipousuario:Anonimo
Sesion:6d37feaa640a1f72b6cb38c07eea9d56

Cuando me registro correctamente: >> Funcion autentificacion en Pag funciones.php<<
Citar
conectado:si
usuario:admin
tipousuario:admin
Sesion:6d37feaa640a1f72b6cb38c07eea9d56

Cuando me devuelve la autentificacion: >>Pag Cabecera.php<<
Citar
conectado:no
usuario:Anonimo
tipo Usuario:Anonimo
Sesion:6d37feaa640a1f72b6cb38c07eea9d56


Lo que me hace bien es pasar los datos entre Config.php y Cabecera.php. Pero me lo hace bien porque lo que hace en config.php es leer toda la pagina pero en funciones. php no me lo pasa. El creo que es porque no lee todo el codigo de funciones sino la funcion autentificar.


PD: He puesto sesion_start() en todas las paginas he incluso dentro de la funcion Autentificacion

Igual los tiros pueden venir por aqui:

Citar
    $HTTP_SESSION_VARS["Cesta"][0]=0; //incializamos el carro
    array_shift($Cesta);//borramos el carro
En este codigo me sale el siguiente warning: Warning: array_shift(): The argument should be an array
Es como si me faltara crear las varibales de sesion. Aunke se supone que con $HTTP_SESSION_VARS se crean automaticamente.

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #10 en: Jueves 20 de Septiembre de 2007, 14:15 »
0
Sería bueno que adjuntaras el código para tratar de averigüar lo que está fallando y ver de donde sale $Cesta entre otras cosas.

Salu2,
Avalon

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #11 en: Viernes 21 de Septiembre de 2007, 12:57 »
0
Muchas Gracias a los 2. Ya he conseguido que funcione y lo mas importante enterder las venditas sesiones. xDD

Ahora me pasa lo siguiente Tengo en la pagina principal 2 frames. En cada frame tengo la pag del dibujo

_________________
|............................|
|....cabecera.php.....|
|............................|
|________________|
|............................|
|............................|
|....Principal.html.....|
|............................|
|.....<IFRAME>........|
|............................|
|............................|


En la cabecera.php se me dan login los usuarios. Cuando se dan de alta se va a la pagina de comprobar.php que tiene el siguiente codigo

Citar

if ($opcion == "LogIn"){
    .........
    .........
    CONSULTA DE  LOGIN 

   if ( EL USUARIO ES EL CORRECTO ){
        .......
        $HTTP_SESSION_VARS["Conectado"]="si";
        .......

         header("Location:cabecera.php");
         
         ***header(..........)*** 
   }
}

Lo que quiero conseguir es poner un segundo header o "algo" para que se me carge en el iframe la pagina novedades.php.

He probado ha poner heder("Location:novedades.php; Target:iframe"); y nada.

En las demas paginas me funciona con <a href=novedades.php Target:iframe> pero claro ahi no puedo poner una etiqueta.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #12 en: Viernes 21 de Septiembre de 2007, 14:09 »
0
Puedes cargarlo con JavaScript

Por ejemplo:

Código: Text
  1.  
  2. &#60;iframe src='about:blank' id='iframe1' width='100%' height='400px'&#62;&#60;/iframe&#62;
  3.  
  4. &#60;?php
  5.  
  6.   echo &#34;&#60;script&#62; document.getElementById('iframe1').src='http://www.solocodigo.com' &#60;/script&#62;&#34;;
  7.  
  8. ?&#62;
  9.  


o tambien puedes imprimirle una variable al src del iframe con php que creo seria mejor

Código: Text
  1. &#60;iframe src='&#60;?php echo 'http://www.solocodigo.com' ?&#62;' id='iframe1' width='100%' height='400px'&#62;&#60;/iframe&#62;
  2.  


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

Ferdinandum

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #13 en: Miércoles 26 de Septiembre de 2007, 09:25 »
0
Tengo 1 nuevos problema con el php a ver si tienen alguna solución

Tengo una tabla que me muestra los productos que puedo comprar, con sus caracteristicas, su precio y luego 2 campos mas; 1 añadir a la compra y 2 un campo texto que me pone cantidad.

   ------------------------------------------------------------------------
    Producto | ... Caracteristiacas ... | Precio | Añadir | Input Box
   ------------------------------------------------------------------------

  - Lo que necesito es la forma de recoger el valor del input text para saber cuantas unidades quiere comprar el cliente. Los input text se generan automaticamente y claro no se como recoger ese valor.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Problema Con Variables De Sesion
« Respuesta #14 en: Miércoles 26 de Septiembre de 2007, 13:19 »
0
Puedes recorrer el form ( Nota: esto no es PHP es en javascript) usando elements del form

Por ejemplo

Código: Text
  1.  
  2.  
  3. elFrm=document.getElementById('frmarticulos')
  4.  
  5. for (ctrl=0;ctrl&#60;elFrm.elements.length;ctrl++)
  6.     {
  7.           alert (elFrm.elements[ctrl].value)
  8.      }
  9.  
  10.  

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================