session_name

edited diciembre 2009 in Bugs y Problemas
Hola a todos, les comento que tengo un par de aplicaciones desarrolladas en kumbia 0.4.7 la estructura de ambas aplicaciones es similar por lo que algunas variables de sesión coinciden en el nombre.

Me gustaría poder asignar el nombre a la sesión de PHP usando session_name para que dichas variables no se sobrescriban pero no se donde sería mejor colocarlo ( /forms.php, /kumbia.php, etc)

Alguna sugerencia? de antemano muchas gracias...

saludox!

Comentarios

  • no entiendo muy bien cual es el problema???
  • edited 11:17
    Hola a todos, trataré de ser mas específico con el detalle de las sesiones.

    Manejo dos aplicaciones de estructura similar en el mismo servidor usando kumbia 0.4.7

    El problema se presenta al utilizar una variable en sesión cuyo nombre es igual en ambas aplicaciones e.g.

    Aplicación 1

    Session :: set_data( 'usr.login', 'alpha' );

    Aplicación 2

    Session :: set_data( 'usr.login', 'beh' );

    Al hacer la lectura de la variable desde la Aplicación 1 obtendría el último valor establecido para la variable de sesion (beh en lugar de alpha). Según entiendo este comportamiento se presenta por utilizar la sesión de PHP sin antes usar la función session_name()

    Para repararlo se me ocurrío poner la función session_name( $nombre ) que cargue la variable $nombre desde el config.ini, de esta forma la cookie almacenaría un id diferente para cada aplicación y las variables de sesión no se sobreescribirían.

    La cosa es que no se en que archivo acomodar la función para que cargue el nombre antes de cualquier escritura en sesión por parte del framework.

    Espero haberme explicado con mas claridad y agradezco de antemano la atención a mi mensaje.

    Saludos!
  • edited 11:17
    yo lo haria en el public/index.php
    antes del session_register();
  • edited 11:17
    tarde pero seguro...

    efectivamente es ahí Fidelio, muchas gracias...

    $config = parse_ini_file( '../forms/config/config.ini' );
    session_name( sha1( $config[ 'name' ] ) );

    con estas dos lineas se carga el nombre del proyecto del config.ini se encripta usando sha y se asigna el nombre de la sesión...

    saludox!
  • Deberias hacer un esfuerzo es migrar esas aplicaciones a la version 1.0
Sign In or Register to comment.