Tengo una página que utiliza un formulario para filtrar registros de una base de datos y en la misma página muestro el resultado de dicha consulta, la página funciona perfectamente.
El problema inicial es que cada vez que cambio algún valor del filtro me refresca toda la página y para evitar eso he decidido refrescar solo el div donde muestro el resultado de la consulta, para ello he creado una página nueva a la que llamo Pagina1.php que contiene solo la consulta y en la página inicial que se llama Coches.php mantengo el formulario de Filtrar y el div donde cargo la Pagina1.php cada vez que filtro.
Lo que no se hacer es como pasar los valores de seleccionados del formulario que utilizo para filtrar en Coches.php a la nueva Pagina1.php que es donde se encuentra mi consulta, y no lo se hacer porque es la primera vez que utilizo Jquery.
¿Me podeis ayudar?
Este es el código de Coches.php:
Código:
<script type='text/javascript' src='jquery-1.7.1.min.js'></script>
<script type='text/javascript'>
$(document).ready(function(){
cargarContenido('Pagina1.php');
});
</script>
<style type='text/css'>
#contenido { position: absolute; top: 184px; left: 200px; width:765px;height: 165px;}
.clock {position:relative;left:50%;top:50%;width:36px;height:36px;padding:20px;}
</style>
</head>
<?php
require_once('Connections/ConexionCoches.php');
$selciudad = isset($_GET["selciudad"])? $_GET["selciudad"]: '';
$aireacond = isset($_GET["aireacond"])? $_GET["aireacond"]: '';
?>
<body>
<div id="DivContenedor">
<div id="Fondo">
<div id="DivFiltrado">
<form name="filtrar" id="filtrar" method="GET" action="Coches.php">
<table width="192" height="30" border="0">
<tr>
<td align="center">
<select name="selciudad" id="selciudad" class="Guias3" Onchange="cargarContenido('Pagina1.php')">
<option value="-1" selected> Todas las Ciudades </option>
<?php
$tablaciudad = mysql_query("SELECT * FROM provincias ORDER BY Provincia ASC");
while ($registrociudad = mysql_fetch_array($tablaciudad ))
if(empty($_GET['selciudad']))
{
($_GET['selciudad'] = '-1');
}elseif
($_GET["selciudad"]==$registrociudad['Provincia']) {
echo "<option value='".$registrociudad['Provincia']."' selected> ".$registrociudad['Provincia']."</option>";
}else{
echo "<option value='".$registrociudad['Provincia']."' > ".$registrociudad['Provincia']."</option>"; }
mysql_free_result($tablaciudad);
?>
</select>
</td>
</tr>
</table>
<table width="184" border="0" align="center" class="Guias3" rules="rows">
<tr>
<td align="left" height="22">
<?php
if (isset($_GET["aireacond"])){
echo "<label><input type='checkbox' name='aireacond' id='aireacond' value='1' checked onClick=\"cargarContenido('Pagina1.php')\"/> Aireacond</label>";
}else{
echo "<label><input type='checkbox' name='aireacond' id='aireacond' value='1' onClick=\"cargarContenido('Pagina1.php')\"/> Aireacond</label>";}
?>
</td>
</tr>
</table>
</form>
</div>
<div id='contenido'></div>
<script type='text/javascript'>
function cargarContenido(pagina)
{
// cargamos el icono en el div donde ira el contenido
$("#contenido").html("<img src='clock.gif' class='clock' border='0' />");
// cargamos la pagina Pagina1.php en el div contenido
$("#contenido").load(pagina);
}
</script>
</div> <!-- Cierro Fondo -->
</div><!-- Cierro DivContenedor -->
</body>
Esta es mi Pagina1.php que recargo en el <div id='contenido'>:
Código:
<?php
require_once('Connections/ConexionCoches.php');
?>
<?php
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM coches WHERE Activacion = '1'";
if (isset($_GET['selciudad'])and $_GET['selciudad'] <>'-1') {
$sql .= "AND coches.Ciudad = '$selciudad' ";
}else {$sql .= "AND coches.Ciudad <> '-1' ";
}
if (isset($_GET['aireacond'])and $_GET['aireacond'] ='1') {
$sql .= "AND coches.Aireacond = '$aireacond' ";
}else {$sql .= "AND (coches.Aireacond = '1' or coches.Aireacond = '0')";
}
$sql .= 'LIMIT 0, 12' ;
if (!($result = @mysql_query($sql))) {
die(mysql_error()); }
//Recuperar el número total de registros en la tabla
$rows = mysql_fetch_assoc(mysql_query('SELECT FOUND_ROWS() AS rows'));
$tabla = mysql_query($sql);
while ($registro = mysql_fetch_array($tabla)) {
?>
<div class="Prueba">
<table class="MarcoFotoPrincipal" width="165" border="0">
<tr>
<td><a href="<?php echo $registro['Url']; ?>"><img border="0" src="<?php echo $registro['FotoPrincipal']; ?>"></a></td>
</tr>
</table>
<table width="165" align="center" border="2" bordercolor="#D6A64A">
<tr>
<td align="center" class="Edad"><?php echo $registro['Edad']. " años / "; ?><?php echo $registro['Precio']. " €uros"; ?></td>
</tr>
<tr>
<td align="center" class="Ciudad"><?php echo $registro['Ciudad']; ?></td>
</tr>
</table>
</div>
<?php
}
mysql_free_result($tabla);
?>
Por favor decidme como lo debo hacer.
Gracias a tod@s.