Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/10/2007, 08:15
aviana
 
Fecha de Ingreso: enero-2002
Ubicación: Graná
Mensajes: 646
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: Problema con sesiones

En este fichero (llamado colegiados.php), al darle al enlace "volver atras", se me desconecta de la sesión y no se porqué
<?php
include_once ('config.php');
include_once ('funciones.php');
include_once ("config_bbdd.php");
//formo el enlace para volver atrás
$pos=strripos ($_SERVER['REQUEST_URI'], 'colegiado=');
$enlace_atras=substr ($_SERVER['REQUEST_URI'], 0, $pos-1);
$dureza=1;
$mensaje1="Colegiados/Listado de colegiados por provincias";
$mensaje2="Esta sección recoge un listado de todos los colegiados por provincias de Andalucía.";
$tabla=$tabla_colegiados;
$campos_busqueda=$campos_busqueda_colegiados;
$campos_busqueda_detalle=$campos_busqueda_colegiad os_detalle;

echo '<!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=iso-8859-1" />
<title>Coleg&iacute;o Profesional de Pod&oacute;logos de Andaluc&iacute;a</title>
<link href="estilos.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div align="left">
<table width="617" height="330" border="0">
<!--DWLayoutTable-->
<tr>
<td width="611">
<div align="left">
<table width="609" height="324" border="0">
<tr>
<td height="21" bgcolor="#FFFFFF"><img src="img/titulo-el-colegio.jpg" alt="El colegio" width="605" height="42" /></td>
</tr>
<tr>
<td height="73" bgcolor="#FFFFFF"><table width="590" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="19" class="Estilo6"><div align="justify" class="Estilo8">'.$mensaje1.'</div></td>
</tr>
<tr>';

if ((!isset ($_SESSION['num_colegiado'])) || (!isset($_SESSION['usuario'])))
echo '<table><tr><td align="center" class="texto_destacado">Lo sentimos, pero esta sección sólo es para colegiados</td></tr></table>';
else{
if (isset($_POST['enviar_correo'])){
envia_correo ($_POST['correoe'], "Correo desde la web de colegiopodologos.org", $_POST['consulta']);
echo '<td class="texto_destacado">Mensaje enviado</td></tr><tr><td class="texto_destacado"><a href="'.$enlace_atras.'">Volver atrás</a></td></tr>';
}
//si entra aquí es porque se pinchó en un enlace para ver más información sobre un colegiado
if (isset($_GET['colegiado'])){
echo '<tr>
<td>
<table width="426" border="0" align="center">
<form name="envio_correo" action="'.$_SERVER["REQUEST_URI"].'" method="post">';
$argumentos=array('colegiado'=>$_GET['colegiado']);

$detalle=busqueda ($argumentos, $tabla, $campos_busqueda_detalle, $dureza, 1);
while (list ($num_colegiado, $colegiado)=each($detalle)){
while (list ($llave, $valor)=each ($colegiado))
echo "<tr>
<td bgcolor=\"#EAEAEA\" class=\"textos\">".strtoupper ($llave)."</td>
<td colspan=\"2\" bgcolor=\"#EAEAEA\" class=\"Estilo8\">$valor</span></td>
<input type=\"hidden\" name=\"$llave\" value=\"$valor\" />
</tr>";
}
echo '<tr>
<td colspan="3" bgcolor="#EAEAEA" class="textos">Mandar un correo-e: </td>
</tr>
<tr>
<td colspan="3" bgcolor="#FFFFFF" class="textos"><label>
<textarea name="consulta" cols="65"></textarea>
</label></td>
</tr>
<tr>
<td colspan="3" bgcolor="#EAEAEA" class="textos"><label>
<div align="center">
<input type="submit" name="enviar_correo" value="Enviar" />
</div>
</label></td>
</tr>
<tr>
<td colspan="2" rowspan="2" bgcolor="#FFFFFF">&nbsp;</td>
<td bgcolor="#FFFFFF"><div align="right"><a href="'.$enlace_atras.'">Volver atr&aacute;s </div></td>
</tr>
<tr>
<td bgcolor="#FFFFFF"><div align="right">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="88" height="17" title="boton volver">
<param name="movie" value="boton volver compra.swf" />
<param name="quality" value="high" />
<embed src="boton volver compra.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="88" height="17"></embed>
</object>
</div></td>
</tr>
</form></table></td>
</tr>
</table>
</td>
</tr>
</table>
</div></td>
</tr>
</table>
</div>
</body>';
//si entra aquí es porque vamos a ver la información básica y el buscador de colegiados
}else{
echo '<td height="21" class="textos">'.$mensaje2.'</td>
</tr>
<table width="580" border="0">
<form name="buscar_colegiado" method="post" action="'.$_SERVER['PHP_SELF'].'">
<tr>
<td colspan="3" class="textos">Busqueda de colegiados: </td>
</tr>
<tr>
<td bgcolor="#EAEAEA" class="textos">Provincia:
<label>
<select name="provincia" id="provincia">
<option value="">Cualquiera</option>
<option>Almería</option>
<option>Cádiz</option>
<option>Granada</option>
<option>Málaga</option>
<option>Huelva</option>
<option>Sevilla</option>
<option>Córdoba</option>
</select>
</label></td>
<td bgcolor="#EAEAEA" class="textos">Población:
<input name="población" type="text" id="población" size="25" /></td>
<td bgcolor="#EAEAEA" class="textos">Estado
<select name="estado" id="estado">
<option value="">Cualquiera</option>
<option>De baja</option>
<option>Ejerciente</option>
<option>Inactivo</option>
<option>Jubilado</option>
</select></td>
</tr>
<tr>
<td colspan="3"><div align="center">
<input name="buscar_colegiados" type="submit" id="buscar_colegiados" value="Buscar" />
</div></td>
</tr>
</form>
</table>';
//formo la matriz de argumentos
$argumentos=array('provincia'=>@$_REQUEST['provincia'], 'población'=>@$_REQUEST['población'], 'estado'=>@$_REQUEST['estado']);
//realizo la búsqueda
@$resultado=busqueda ($argumentos, $tabla, $campos_busqueda, $dureza);
//obtengo el número de registros que devuelve la consulta
$total_resultados=count($resultado);
//si hay información que mostrar....
if ($total_resultados>0){
//imprimo cabeceras de tablas
$aux=array_values ($campos_busqueda); //obtengo los nombres de los campos
echo '<tr>
<td>
<table width="589" border="0"><tr>';
while (list (, $valor)= each ($aux)) //los voy recorriendo para dibujarlos como cabecera de columna
echo "<td bgcolor=\"#EBEBEB\" class=\"Estilo13\">".strtoupper($valor)."</td>";
echo '</tr>';

//¿hace falta paginar?
if ($total_resultados>$resultados_por_pagina){
if (!isset ($_GET['pagina']))
//obtengo las clínicas correspondientes a la página 1
$resultado=busqueda ($argumentos, $tabla, $campos_busqueda, $dureza, 1);
else
//obtengo las clínicas correspondientes a la página que el usuario haya pulsado
$resultado=busqueda ($argumentos, $tabla, $campos_busqueda, $dureza, $_GET['pagina']);
}

//imprimo el resultado de la búsqueda
while (list ($indice, $matriz)=each($resultado)){
echo '<tr>';
$aux=array_values($matriz);
while (list (, $valor)= each ($aux))
echo "<td class=\"Estilo8\"><a href=\"$enlace\">$valor</a></td>";
echo '</tr>';
//si la url ya tiene argumentos, hay que añadir la info sobre el colegiado con un & y si no, con un ? (al ser el primer parámetro)
if (stripos($_SERVER["REQUEST_URI"], "?"))
$enlace=$_SERVER["REQUEST_URI"]."&colegiado=".$_SESSION['num_colegiado'];
else
$enlace=$_SERVER["REQUEST_URI"]."?colegiado=".$_SESSION['num_colegiado'];
echo "<td class=\"Estilo8\"><a href=\"$enlace\">$valor</a></td>";

}

//formo el valor de los parámetros (el de página depende del bucle que se hará más adelante)
//recojo el valor de los parámetros para volver a repetir la consulta

$enlace_paginacion=$_SERVER['PHP_SELF']."?provincia=".@$_REQUEST['provincia']."&población=".@$_REQUEST['población']."&estado=".@$_REQUEST['estado']."&pagina=";
paginar ($total_resultados, $enlace_paginacion);
}else //si no hay nada que mostrar...
echo "<tr><td class=\"texto_destacado\">Lo sentimos, no hay resultados con esas características</td></tr>";
echo '<tr>
<td colspan="8" bgcolor="#FFFFFF"><div align="right">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="88" height="17" title="boton volver al menu">
<param name="movie" value="boton volver.swf" />
<param name="quality" value="high" />
<embed src="boton volver.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="88" height="17"></embed>
....

Última edición por aviana; 01/10/2007 a las 08:24