recarga de pagina
Publicado por soFila (6 intervenciones) el 21/04/2009 23:26:45
Envío un parametro desde un formulario (acota) con el que realizo una consulta sql para mostrar los datos que recupero mediante paginacion, el problema es que cuando pulso el link hacia la proxima pagina nome toma lo que ingreso en el formulario, es como que c borra el valor...adjunto el codigo de la pagina:
<ul class="buscar">
<li><form class="form-buscar" name="fbuscar" id="fbuscar" action="listadoproduc.php" method="post">
<table>
<tr>
<td><p class="Estilo11">BUSCADOR</p></td>
</tr>
<tr>
<td><input type="text" name="acota" id="acota"/></td> /*ESTE CAMPO USO PARA ACOTAR LA BUSQUEDA EN SQL*///
<td><input type="submit" id="buscar" value="Buscar"/></td>
</tr>
</table>
</form></li>
</ul>
<?php
include("php/conexion.php");
$link=conectar();
$hasta=3;
$numpag =3;// Resultados a mostrar por pagina
$adicionales =1;//Resultados a mostrar mayores y menores que la pagina actual
$archivo = "listadoproduc.php";// El nombre del archivo donde tenemos este codigo
$pagina = $_GET["pagina"];
if (!$pagina) {
$pagina = 1;
$desde = (1 - 1) * $hasta;
}
else {
$desde = ($pagina - 1) * $hasta;
}
//* ACA TOMO EL PARAMETRO Y LO MANDO A LA VARIABLE CRITERIO PARA USARLA EN LA CONSULTA, LA 1ERA VEZ LO TOMA BIEN PERO DESPUES NO LO RECONOCE...
$criterio=($_GET["criterio"]);
if(!isset($criterio)){
$criterio=$_POST["acota"];}
else{$criterio=$_GET["criterio"];}
$squery="SELECT * FROM productos WHERE descrip like '%$criterio%' or nombre like '%$criterio%'";
$resultados = mysql_query($squery,$link) or die(mysql_error());
$total_registros = mysql_num_rows($resultados);
$total_paginas = ceil($total_registros / $hasta);
if($total_registros==0){
echo("No existen productos con esas caracteristicas");
}
else{
?>
<div class="contenido">
<table border="3" bordercolor="#6633FF">
<tr>
<td class="Estilo17" >Producto</td>
<td class="Estilo17">Características</td>
</tr>
<?php
$rquery ="SELECT * FROM productos WHERE descrip like '%$criterio%' or nombre like '%$criterio%' LIMIT $desde, $hasta";
$resultados = mysql_query($rquery,$link) or die(mysql_error());
$total_registros = mysql_num_rows($resultados);
while($fila=mysql_fetch_array($resultados)) {
//mostrar los datos en la tabla
?>
<tr>
<td height="58"><img src="../imagenes/<?php echo($fila['img_prod']) ?>" alt="Foto no disponible" width="120" height="90" /></td>
<td width="440"><br/>
<div align="left">
<span class="Estilo16">Nombre:<p class="Estilo14"><?php echo($fila['nombre']) ?></p></span><br/>
<span class="Estilo16">Categoría:<p class="Estilo14"><?php echo($fila['categ']) ?></p></span><br/>
<?php // $cat=($fila['categ']);
//$sqlnormal="SELECT desc_cat FROM categorias where id_cat='$cat'";
//$result2=mysql_query($sql,$link);
//echo($result2['categ'])?>
<span class="Estilo16">Descripción:<p class="Estilo14"><?php echo($fila['descrip']) ?></p></span><br/>
<span class="Estilo16">Precio:<p class="Estilo14"> <?php echo($fila['precio']) ?></p></span><br/>
</td>
</tr>
<?php }
} ?>
</table>
<br />
<?php
echo "<div align=center>";
if($total_registros) {
if (($pagina -1) >0){
echo "<a href='".$archivo."?pagina=".($pagina-1)."'>< Anterior</a> ";
}
for ($i=1; $i<=$total_paginas;++$i){
if ($pagina == $i) {
//si hay una pagina, no coloco enlace
echo "<b>".$pagina."</b> ";
// echo $i;
}else {
//si el índice no corresponde con la página mostrada actualmente,
//si hay mas mostramos todos los links
//echo" - ";
echo "<a href='".$archivo."?pagina=$i' title='Pagina $i'>$i </a>";
}
}
if(($pagina + 1)<=$total_paginas) {
echo " <a href='".$archivo."?pagina=".($pagina+1)."'>Siguiente ></a>";
}
echo "</div>";
}
?>
<ul class="buscar">
<li><form class="form-buscar" name="fbuscar" id="fbuscar" action="listadoproduc.php" method="post">
<table>
<tr>
<td><p class="Estilo11">BUSCADOR</p></td>
</tr>
<tr>
<td><input type="text" name="acota" id="acota"/></td> /*ESTE CAMPO USO PARA ACOTAR LA BUSQUEDA EN SQL*///
<td><input type="submit" id="buscar" value="Buscar"/></td>
</tr>
</table>
</form></li>
</ul>
<?php
include("php/conexion.php");
$link=conectar();
$hasta=3;
$numpag =3;// Resultados a mostrar por pagina
$adicionales =1;//Resultados a mostrar mayores y menores que la pagina actual
$archivo = "listadoproduc.php";// El nombre del archivo donde tenemos este codigo
$pagina = $_GET["pagina"];
if (!$pagina) {
$pagina = 1;
$desde = (1 - 1) * $hasta;
}
else {
$desde = ($pagina - 1) * $hasta;
}
//* ACA TOMO EL PARAMETRO Y LO MANDO A LA VARIABLE CRITERIO PARA USARLA EN LA CONSULTA, LA 1ERA VEZ LO TOMA BIEN PERO DESPUES NO LO RECONOCE...
$criterio=($_GET["criterio"]);
if(!isset($criterio)){
$criterio=$_POST["acota"];}
else{$criterio=$_GET["criterio"];}
$squery="SELECT * FROM productos WHERE descrip like '%$criterio%' or nombre like '%$criterio%'";
$resultados = mysql_query($squery,$link) or die(mysql_error());
$total_registros = mysql_num_rows($resultados);
$total_paginas = ceil($total_registros / $hasta);
if($total_registros==0){
echo("No existen productos con esas caracteristicas");
}
else{
?>
<div class="contenido">
<table border="3" bordercolor="#6633FF">
<tr>
<td class="Estilo17" >Producto</td>
<td class="Estilo17">Características</td>
</tr>
<?php
$rquery ="SELECT * FROM productos WHERE descrip like '%$criterio%' or nombre like '%$criterio%' LIMIT $desde, $hasta";
$resultados = mysql_query($rquery,$link) or die(mysql_error());
$total_registros = mysql_num_rows($resultados);
while($fila=mysql_fetch_array($resultados)) {
//mostrar los datos en la tabla
?>
<tr>
<td height="58"><img src="../imagenes/<?php echo($fila['img_prod']) ?>" alt="Foto no disponible" width="120" height="90" /></td>
<td width="440"><br/>
<div align="left">
<span class="Estilo16">Nombre:<p class="Estilo14"><?php echo($fila['nombre']) ?></p></span><br/>
<span class="Estilo16">Categoría:<p class="Estilo14"><?php echo($fila['categ']) ?></p></span><br/>
<?php // $cat=($fila['categ']);
//$sqlnormal="SELECT desc_cat FROM categorias where id_cat='$cat'";
//$result2=mysql_query($sql,$link);
//echo($result2['categ'])?>
<span class="Estilo16">Descripción:<p class="Estilo14"><?php echo($fila['descrip']) ?></p></span><br/>
<span class="Estilo16">Precio:<p class="Estilo14"> <?php echo($fila['precio']) ?></p></span><br/>
</td>
</tr>
<?php }
} ?>
</table>
<br />
<?php
echo "<div align=center>";
if($total_registros) {
if (($pagina -1) >0){
echo "<a href='".$archivo."?pagina=".($pagina-1)."'>< Anterior</a> ";
}
for ($i=1; $i<=$total_paginas;++$i){
if ($pagina == $i) {
//si hay una pagina, no coloco enlace
echo "<b>".$pagina."</b> ";
// echo $i;
}else {
//si el índice no corresponde con la página mostrada actualmente,
//si hay mas mostramos todos los links
//echo" - ";
echo "<a href='".$archivo."?pagina=$i' title='Pagina $i'>$i </a>";
}
}
if(($pagina + 1)<=$total_paginas) {
echo " <a href='".$archivo."?pagina=".($pagina+1)."'>Siguiente ></a>";
}
echo "</div>";
}
?>
Valora esta pregunta


0