Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/02/2013, 11:30
BLADDE
 
Fecha de Ingreso: abril-2006
Mensajes: 72
Antigüedad: 18 años, 7 meses
Puntos: 0
SESSION en PHP 5

saludos compañeros, pase mis sistemas a php5 (todos funcionaban al pelo) pero al correrlos en php5 saltaron varios warning y errores. el que mas me interesa solventar es el siguiente:
tengo un sistema integrado donde se programan modulos y se van agregando a ese gran sistema integrado, al crear un modulo se crea un directorio donde se guardan los archivos php de dicho modulo, y no se por que creo que ahi inicia el problema fijense al momento de loguearte en el sistema integrado se crean las variables de sesion de esa persona lo cual le permitera ver los modulos que les corresponde como usuario, en el login esta el session_start(); al inicio se uso el <?php en todo el sistema todo debe funcionar y lo hace siempre que chekeo las variables de session en el mismo directorio donde esta el login pero cuando paso a un modulo es decir a un directorio distinto pierdo las variables de session es decir si doy un echo $_SESSION["s_variable1"] me salta un error de que la variable _SESSION no existe, solvente poniendo session_satart(); en las paginas como estaba en la version anterior del pHP y funcionaba sin probleme pero al unicio el te indica q si ya hiciste un session_start() no hace falta repetirlo; bueno solvente colocando @session_satart() y se lee las variables de session pero no creo que sea lo correcto por eso quiero saber que puede estar pasando.


codigo de login
<?php
session_start();
if($_POST)
{
$usuario_user=$_POST["usuario"];
$password_user=$_POST["password"];
include 'conexion.php';
$sql="SELECT * FROM users WHERE username='$usuario_user' AND password='".md5($_POST['password'])."'";
$consulta=mysql_query($sql);
if($res=mysql_fetch_object($consulta)){
//creo las variables de session
$_SESSION["s_user_nombre"]=$res->nombre;
$_SESSION["s_user_username"]=$res->username;
$_SESSION["s_user_tipo_user"]=$res->tipo_user;
$_SESSION["s_cedula"]=$res->cedula;
echo ("<script language='javascript'>
var pagina='pdc.php'
location.href=pagina

</script>");
}else{ //no coinciden los datos con los registrados


echo ("<script language='javascript'>
alert('Datos incorrectos verifique')
var pagina='index.php'
location.href=pagina

</script>");

}
}else {

echo ("<script language='javascript'>
alert('No tiene los privilegios para visualizar esta pagina')
var pagina='index.php'
location.href=pagina

</script>");
}

?>



y el de uno de los modulos donde no funcan las variables de session

<?php
session_start();
if (isset($_SESSION["s_user_username"])) {

$cedula=$_SESSION["s_cedula"];
include_once 'funciones.php';

if ($_POST){

if (@$_POST['editar_usuario']==1)
{
$cedula=$_SESSION["s_cedula"];
include 'conexion.php';

$sql="select codigo_direccion,codigo_dependencia,codigo_car from personal where cedula='$cedula'";
$consulta=mysql_query($sql);
if($res=mysql_fetch_object($consulta)){
$direccion_dep=obt_dir_dep($res->codigo_direccion);
$dependencia_ads=obt_dep($res->codigo_dependencia);
$cargo=obt_cargo($res->codigo_car); }
// verifico que todo este bien
$sw=0;
//verifico el telefono
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=latin1" />
<title>.: SIA :.</title>
<!-- Begin DropDown -->
</head>

<body>
<?php include 'header_principal.php'; ?>
<?php include '../botonera_general.php'; ?>

<div>
<form name="form1" method="post" action="registro_actualizacion.php">
<h2>Actualiza tus datos</h2>
<ul>
<li id="foli8" class="notranslate leftHalf">
Nombre
<div>
<input id="nombre" name="nombre" type="text" class="field text medium" value="<?php echo $nombre; ?>" maxlength="250" tabindex="1" onKeyPress="return teclear(event,1)" />
</div>
<li id="foli8" class="notranslate leftHalf ">
C&eacute;dula
<div>
<input name="cedula" type="text" id="cedula" tabindex="2" onkeyup="" value="<?php echo $cedula; ?>" readonly="readonly" class="field text medium" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Telefono
<div>
<input name="telefono" type="text" class="field text medium" id="telefono" tabindex="3" onKeyPress="return teclear(event,3)" value="<?php echo $telefono; ?>" maxlength="25" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Fecha de Nacimiento
<div>
<input name="fecha_nac" type="text" class="field text medium datepicker" id="fecha_nac" tabindex="4" value="<?php echo $fecha_nac; ?>" maxlength="10" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Correo Personal
<div>
<input name="correo_per" type="text" value="<?php echo $correo_per; ?>" maxlength="255" tabindex="5" onKeyPress="return teclear(event,8)" class="field text medium" />
</div>
<li id="foli15" class="notranslate leftHalf ">

Municipio
<div>
<?php generamunicipio(); ?>
</div>
</li>
<li id="foli15" class="notranslate leftHalf ">

Parroquia
<div>
<select disabled="disabled" name="estados" id="estados" tabindex="7" class="field text medium" >
<option selected="selected" value="0" >
Seleccionar
</option>
</select>
</div>
</li>
<li id="foli8" class="notranslate leftHalf">Direcci&oacute;n de Habitaci&oacute;n
<div>
<textarea class="field select medium"
name="direccion_hab"
rows="5" cols="50" tabindex="8"
><?php echo $direccion_hab; ?></textarea>

</div>
</li>
<li id="foli8" class="notranslate leftHalf ">
Fecha de Ingreso a la Instituci&oacute;n
<div>
<input name="fecha_ing" type="text" class="field text medium datepicker" id="fecha_ing" tabindex="9" value="<?php echo $fecha_ing; ?>" maxlength="10" readonly="readonly" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Direcci&oacute;n de la que depende
<div>
<input name="direccion" type="text" class="field text medium" id="direccion" tabindex="10" onkeyup="" value="<?php echo $direccion_dep; ?>" readonly="readonly" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Dependencia a la que est&aacute; adscrito(a)
<div>
<input name="dependencia" type="text" class="field text medium" id="dependencia" tabindex="11" onkeyup="" value="<?php echo $dependencia_ads; ?>" readonly="readonly" />
</div>
<li id="foli8" class="notranslate leftHalf ">
Dependencia en la que trabaja actualmente
<div>
</body>
</html>
<?php }else{
echo ("<script language='javascript'>
alert('Esta pagina es privada, no tiene los permisos necesarios')
var pagina='index.php'
location.href=pagina</script>");

} ?>


en ese ejemplo primero me da un error de que no debo colocar nuevamente el session_start() al quitarla el valor de $_SESSION["s_user_username"] no tiene nada de hecho si hago "echo $_SESSION["s_user_username"];" me dice que _SESSION no existe

alguna orientacion?