Bueno me he atascado con una cosa tonta, debo estar bastante cansado pero llevo tiempo buscando el problema y no lo veo, pongo todo el código a ver si veis que es lo que hago mal.
En mi página de inicio abro 2 sesiones, una para seleccionar la cantidad de coches que vere por página con mi páginador y otra para seleccionar la ciudad en la que busco los coches y así no tener que poner cada vez la ciudad cuando navego entre mis páginas, de entrada veo todos los coches de todas las ciudades, hasta que seleccione una ciudad en concreto, hasta aquí correcto.
La SESSION donde selecciono la cantidad de coches a visualizar por página funciona bien en todos los sitios, pero la de la ciudad me da por todos los lados, os pongo el código reducido a lo necesario para que me digais como debo hacerlo, ya que he eliminado todo el código de pruebas que he hecho y lo he puesto separado al final.
Página de INICIO.PHP
Código PHP:
Ver original<?php
$_SESSION["numpag"]=250;
$_SESSION["Ciudad"]=-1;
// Aqui indico que al entrar por primera vez me ponga 250 coches por página
// y presente los coches de todas las ciudades.
?>
<head>
</head>
<?php
require_once('Connections/ConexionCoches.php');
?>
<body>
<table width="765" border="0" height="30">
<tr>
<td align="center" width="60" class="Submenu">Inicio</a></td>
<td align="center" width="130"><a href="Coches.php">Coches</a></td>
</tr>
</table>
</body>
</html>
Página COCHES.PHP
Código PHP:
Ver original<?php
{
}
?>
<head>
<script type='text/javascript' src='Js/jquery-1.7.1.min.js'></script>
</head>
<?php
require_once('Connections/ConexionCoches.php');
if(isset($_GET["selregistrospagina"])){ $_SESSION["numpag"]=$_GET["selregistrospagina"];
}
$selregistrospagina=$_SESSION["numpag"];
?>
<body>
<div id="DivNumRegistrosPagina">
<form name="Paginas" method="GET" action="Coches.php">
<table width="195" height="30" border="0">
<tr>
<td align="center" class="ChicasPagina">Chicas por página:</td>
<td align="center">
<select name="selregistrospagina" id="selregistrospagina" class="Guias3" onchange="this.form.submit()" >
<option value="" selected><?php echo $_SESSION["numpag"];?></option>
<?php
$tablaregistrospagina = mysql_query("SELECT * FROM registrospagina ORDER BY Paginas ASC"); ?>
<option value="<?php echo $registroregistrospagina['Paginas']; ?>"><?php echo $registroregistrospagina['Paginas']; ?></option>
<?php
}
?>
</select>
</td>
</tr>
</table>
</form>
</div>
<div id="DivFiltrado"><?php require ("MenuLateral.php"); ?></div>
<div id='contenido'><?php require ("Contenido.php"); ?></div>
<table width="765" border="0" height="30">
<tr>
<td align="center" width="60"><a href="inicio.php">Inicio</a></td>
<td align="center" width="130" class="Submenu">Coches</td>
</tr>
</table>
<script type='text/javascript'>
function cargarContenido(pagina)
{
$("#contenido").html("<img src='clock.gif' class='clock' border='0' />");
$("#contenido").load(pagina, $("#filtrar").serialize());
}
</script>
</body>
</html>
Página MENULATERAL.PHP
Código PHP:
Ver original<html>
<head>
</head>
<body>
<form name="filtrar" id="filtrar" method="GET" action="">
<div id="accordion">
<table width="185" height="30" border="0" cellspacing="5">
<tr>
<td align="left">
<select name="selciudad" id="selciudad" class="Guias3" Onchange="cargarContenido('Contenido.php')">
<option value="-1" selected> Todas las Ciudades </option>
<?php
$tablaciudad = mysql_query("SELECT * FROM provincias ORDER BY Provincia ASC"); if (empty($_GET["selciudad"])<> '-1') {
echo "<option value='".$registrociudad['Provincia']."' selected> ".$registrociudad['Provincia']."</option>";
}else{
echo "<option value='".$registrociudad['Provincia']."' > ".$registrociudad['Provincia']."</option>"; }
?>
</select>
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
Página CONTENIDO.PHP
Código PHP:
Ver original<?php
{
}
?>
<head>
</head>
<?php
require_once('Connections/ConexionCoches.php');
if(isset($_GET["selregistrospagina"])){ $_SESSION["numpag"]=$_GET["selregistrospagina"];
}
$selregistrospagina=$_SESSION["numpag"];
$selciudad = isset($_GET["selciudad"])?
$_GET["selciudad"]: ''; ?>
<?php
$records_per_page = $selregistrospagina;
require 'Zebra_Pagination/Zebra_Pagination.php';
$pagination = new Zebra_Pagination();
$pagination->records_per_page($records_per_page);
?>
<body>
<div id="Consulta">
<?php
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM escortschicas WHERE Activacion = '1'";
if (isset($_GET['selciudad'])and
$_GET['selciudad'] <>'-1') { $sql .= "AND escortschicas.Ciudad = '$selciudad' ";
}else {$sql .= "AND escortschicas.Ciudad <> '-1' ";
}
$sql .= 'ORDER BY Ciudad ASC ';
$sql .= 'LIMIT ' . (($pagination->get_page()- 1) * $records_per_page) . ', ' . $records_per_page . '';
$pagination->records($rows['rows']);
$pagination->records_per_page($records_per_page);
?>
<div class="Prueba">
<table class="MarcoFotoPrincipal" width="183" border="0">
<tr>
<td><a href="Ficha.php?Id=<?php echo $registro['Id']; ?>"><img border="0" src="<?php echo $registro['FotoPrincipal']; ?>" width="165px" height="240px"></a></td>
</tr>
</table>
</div>
<?php
}
?>
</div>
</body>
La página contenido.php me muestra todos los coches o solo los de la ciudad seleccionada y cuando pulso sobre una imagen de un coche me abre la ficha de ese coche "ficha.php" que en este momento no contiene nada, lo que quiero es que al retroceder me mantenga seleccionada la ciudad igual que me hace con el numero de coches que quiero visualizar por página.
He intentado poner esto en la página contenido.php pero no me funciona. ¿Que es lo que hago mal?.
Código PHP:
Ver originalif(isset($_GET["selregistrospagina"])){ $_SESSION["numpag"]=$_GET["selregistrospagina"];
}
$selregistrospagina=$_SESSION["numpag"];
if(isset($_GET["selciudad"])){ $_SESSION["Ciudad"]=$_GET["selciudad"];
}
$selciudad=$_SESSION["Ciudad"];
Seguire haciendo pruebas, gracias por la molestia de miraros todo el código