Saludos, tengo un problema: Yo valido mi sesion en cada pagina php, tengo en una pagina un formulario son unas listas dependientes: Centro, Sector y dormitorio.
Inicialmente me presenta la lista de centro y las demas son deshabilitadas a medida seleccione una lista, me habilita la siguiente lista. este es el codigo:
Código PHP:
<?php
session_start();
require("../clases/class_mysql.php"););
require("../clases/cCentro.class.php");
require("../clases/cSector.class.php");
require("../clases/cCelda.class.php");
$bd = new bd;
$Centro = new Centro;
$sector = new Sector;
$Dormitorio= new Dormitorio;
if(!isset($_SESSION["txtuser"]) or !isset($_SESSION["txtpass"]) or !isset($_SESSION["dbuser"]) or !isset($_SESSION["dbpass"])){
header("Location: ../index.php?e=1");
echo("1");
}elseif(is_null($_SESSION["txtuser"]) or is_null($_SESSION["txtpass"]) or is_null($_SESSION["dbuser"]) or is_null($_SESSION["dbpass"])){
header("Location: ../index.php?e=1");
echo("2");
}elseif($_SESSION["txtuser"]=="" or $_SESSION["txtpass"]=="" or $_SESSION["dbuser"]=="" or $_SESSION["dbpass"]==""){
//header("Location: ../index.php?e=1");
echo("3");
}elseif(strlen($_SESSION["txtuser"])>25 or strlen($_SESSION["txtpass"])>15 or strlen($_SESSION["dbuser"])>25 or strlen($_SESSION["dbpass"])>100){
header("Location: ../index.php?e=2");
}else{//EJECUTA TODO EL CODIGO HTML
...
...
<tr>
<td align="left">Comentarios u observaciones:</td>
<td align="right">Centro Penal:</td>
<td align="left"><?php
if(!isset($_SESSION["sescentro"]) or $_SESSION["sescentro"]==""){
if($_SESSION["dbidrol"]==1 or $_SESSION["dbidrol"]==2){
$Centro->GetComboPenales();
}else{
$CentroPenal->GetComboCentro($_SESSION["dbidcentro"]);
}
}elseif($_SESSION["sescentro"]!=""){
if($_SESSION["dbidrol"]==1 or $_SESSION["dbidrol"]==2){
//$Centro->GetComboCentros();
$Centro->obtenerCentro($_SESSION["sescentro"]);
$Centro->GetComboCentroSeleccionado($_SESSION["sescentro"],$Centro->NombreCentro);
}else{
//$Centro->GetCombo($_SESSION["dbidcentro"]);
$Centro->obtenerCentro($_SESSION["dbidcentro"]);
$Centro->GetComboCentroSeleccionado($_SESSION["dbidcentro"],$Centro->NombreCentro);
}
}
?>
*</td>
</tr>
<tr>
<td rowspan="2" align="left"><?php
if(!isset($_SESSION["comentarios"])){
echo("<textarea name=\"txt_comentarios\" cols=\"30\" rows=\"3\" id=\"txt_comentarios\"></textarea>");
}else{
echo("<textarea name=\"txt_comentarios\" cols=\"30\" rows=\"3\" id=\"txt_comentarios\">".$_SESSION["comentarios"]."</textarea>");
}
?></td>
<td align="right">Sector:</td>
<td align="left"><?php
if($_SESSION["sescentro"]=="" or !isset($_SESSION["sescentro"])){
$sector->GetComboSectores();
}elseif($_SESSION["sescentro"]!="" and $_SESSION["sessector"]==""){
$sector->GetComboSector($_SESSION["sescentro"]);
}else{
$sector->ObtenerSector($_SESSION["sessector"]);
$sector->GetComboSectoresSelecionado($_SESSION["sessector"],$sector->NombreSector,$_SESSION["sescentro"]);
}
?>
*</td>
</tr>
<tr>
<td align="right">Dormitorio</td>
<td align="left"><?php
if($_SESSION["sessector"]=="" or !isset($_SESSION["sessector"])){
$Celda->GetComboDormitorios();
}elseif($_SESSION["sessector"]!="" and $_SESSION["sesDormitorio"]==""){
$Celda->GetComboDormitorio($_SESSION["sesDormitorio"]);
}else{
}
?>
*</td>
</tr>
Código PHP:
$_SESSION["sescentropenal"] = $_POST['lst_penal'];
$_SESSION["sessector"] = $_POST['lst_sector'];
$_SESSION["sescelda"] = $_POST['lst_celda'];
$hoy = date("Y-m-d");
if($_SESSION["ultimointerno"]=="" or $_SESSION["numerofolio"]=="" or $_SESSION["situacionjuridica"]=="" or $_SESSION["orgdelictiva"]=="" or $_SESSION["fechaingresoalsistpenitenciario"]=="" or $_SESSION["fechaingresoalcentropenal"]=="" or $_SESSION["sesjuzgado"]=="" or $_SESSION["sescentropenal"]=="" or $_SESSION["sessector"]=="" or $_SESSION["sescelda"]==""){
header("Location: datos_juridicos.php?e=1");//AQUI ENTRA PORQUE HAY UN ERROR HE SELECCIONADO EL CENTRO PERO NO EL SECTOR ENTONCES ME ENVIA DE REGRESO AL FORMULARIO PERO YA ME HA CAPTURADO EL CENTRO.
}elseif($_SESSION["fechaingresoalsistpenitenciario"] >= $hoy){
header("Location: datos_juridicos.php?e=6");
}elseif($_SESSION["fechaingresoalcentropenal"] >= $hoy){
header("Location: datos_juridicos.php?e=7");
}else{
if($_SESSION["situacionjuridica"]==1){
$interno->SetInternoDatosJuridicos($_SESSION["ultimointerno"],$_SESSION["orgdelictiva"],$_SESSION["situacionjuridica"],$_SESSION["numerofolio"],$_SESSION["fechaingresoalsistpenitenciario"],$_SESSION["fechaingresoalcentropenal"],$_SESSION["comentarios"]);
$histjuzgado->SetHistorialJuzgado($_SESSION["ultimointerno"],$_SESSION["sesjuzgado"]);
$histjuzgado->ObtenerUltimoHistorialJuzgado($_SESSION["ultimointerno"]);
$_SESSION["ultimohistoricojuzgado"] = $histjuzgado->idHistJuzgado;
$ubicacion->SetUbicacionInterno($_SESSION["ultimointerno"],$_SESSION["sescelda"]);
if($interno->flag2==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=2\";</script>");*/
header("Location: datos_juridicos.php?e=2");
}elseif($histjuzgado->flag1==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=3\";</script>");*/
header("Location: datos_juridicos.php?e=3");
}elseif($ubicacion->flag1==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=4\";</script>");*/
header("Location: datos_juridicos.php?e=4");
}else{
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=0\";</script>");*/
header("Location: datos_juridicos.php?e=0");
}
}elseif($_SESSION["situacionjuridica"]==2){
/*$anio_fin_fase_digitado = substr($_POST['theDate3'],0,4);
$condena->obtenerCondena($_SESSION["ultimointerno"]);
$anio_fin_fase_calculado = ($_POST['theDate3']+$condena->PenaAnio);
$fecha_fin_calculada = $anio_fin_fase_calculado.substr($_POST['theDate3'],4,6);*/
$interno->SetInternoDatosJuridicos($_SESSION["ultimointerno"],$_SESSION["orgdelictiva"],$_SESSION["situacionjuridica"],$_SESSION["numerofolio"],$_SESSION["fechaingresoalsistpenitenciario"],$_SESSION["fechaingresoalcentropenal"],$_SESSION["comentarios"]);
$histjuzgado->SetHistorialJuzgado($_SESSION["ultimointerno"],$_SESSION["sesjuzgado"]);
$histjuzgado->ObtenerUltimoHistorialJuzgado($_SESSION["ultimointerno"]);
$_SESSION["ultimohistoricojuzgado"] = $histjuzgado->idHistJuzgado;
$ubicacion->SetUbicacionInterno($_SESSION["ultimointerno"],$_SESSION["sescelda"]);
$ubicacion->ObtenerUltimaUbicacionGeneralInterno($_SESSION["ultimointerno"]);
$_SESSION["ultimaubicacion"] = $ubicacion->idUbicacionInterno;
$histfase->SetHistFase($_SESSION["ultimointerno"],$_SESSION["sesfase"],$_SESSION["dbuser"],$_SESSION["fechaingresoalcentropenal"]);
$histfase->ObtenerUltimoHistFase($_SESSION["ultimointerno"]);
$_SESSION["ultimafase"] = $histfase->idHistFase;
if($interno->flag2==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=2\";</script>");*/
header("Location: datos_juridicos.php?e=2");
}elseif($histjuzgado->flag1==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=3\";</script>");*/
header("Location: datos_juridicos.php?e=3");
}elseif($ubicacion->flag1==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=4\";</script>");*/
header("Location: datos_juridicos.php?e=4");
}elseif($histfase->flag1==1){
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=5\";</script>");*/
header("Location: datos_juridicos.php?e=5");
}else{
/*echo("<script type='text/javascript'>window.location=\"datos_juridicos.php?e=0\";</script>");*/
header("Location: datos_juridicos.php?e=0");
}
}else{
header("Location: datos_juridicos.php?e=9");
}
}
Entonces me regresa al formulario con el error "url?e=1" pero las variables de sesion se han borrado y me vuelve a pedir usuario y contraseña. no se que puede estar malo.