Foros del Web » Programando para Internet » PHP »

problema con paginator y formulario

Estas en el tema de problema con paginator y formulario en el foro de PHP en Foros del Web. Hola a tod@s. Tenemos un problema con una consulta que hacemos a una base de datos y su paginación que hacemos mediante el paginator de ...
  #1 (permalink)  
Antiguo 30/10/2008, 05:26
 
Fecha de Ingreso: octubre-2008
Mensajes: 3
Antigüedad: 15 años, 6 meses
Puntos: 0
problema con paginator y formulario

Hola a tod@s.
Tenemos un problema con una consulta que hacemos a una base de datos y su paginación que hacemos mediante el paginator de JPinedo. Resulta que queremos listar todos los registros que cumplen la condición ser de una materia e insertados en un mes determinado., por defecto carga el último mes o el que le digamos y pagina bien todos los requisitos, pero si ahora elegimos un mes del formulario carga bien la primera página pero cuando paginamos la siguiente página pierde los registros porque vuelve al mes que tenemos cargado por defecto. No sé si me explico bien. Os cargo parte del código para que le echéis un vistazo.





<?
session_start();

//estructura general
include($_SERVER["DOCUMENT_ROOT"]."/conexion.php");

include($_SERVER["DOCUMENT_ROOT"]."cabecera.php");
include($_SERVER["DOCUMENT_ROOT"]."buscador.php");
include($_SERVER["DOCUMENT_ROOT"]."menu_sup.php");
include($_SERVER["DOCUMENT_ROOT"]."menu_izq.php");

//calculo de fechas//



setlocale(LC_ALL, "sp");


if(isset($_POST['Submit'])){

$month = $_POST['month'];
$year = $_POST['year'];
$_SESSION['date']= mktime(0,0,0,$month,1, $year) ;
$fecha_mes = strftime('%Y-%m', $_SESSION['date']);



}else{

$_SESSION['date']= mktime(0,0,0, date("m"), date("d"), date("Y")) ;

}


//fin calculo de fechas//

$fecha_mes = strftime('%Y-%m', $_SESSION['date']);



echo'<div id="centro">';


echo '
<h1> <img src="img/hoja.gif" alt="Epigrafe" /> Publicaciones electrónicas </h1>';

//lo que viene a continuación es para que ponga la materia en la cabecera de la página

$sql_epigrafe="SELECT * FROM materias WHERE id_materia LIKE '$epigrafe'";
$resultado_epigrafe=mysql_db_query("tnt","$sql_epi grafe");
while ($registro_epigrafe=mysql_fetch_array($resultado_e pigrafe))

{
$epigrafe2=$registro_epigrafe["materia"];
}

echo'<p class="epigrafes">Boletin BiB | Novedades bibliográficas en: '.$epigrafe2.'</p>';

// fin




//para seleccionar otros meses
echo'<p><form action="nov_bib_int_definitivo.php?seccion=publica ciones-e&amp;localizacion=Novedades bibliograficas&amp;epigrafe='.$epigrafe.'" method="post" name="mes_boletin" id="mes_boletin">
Boletines anteriores:
<label for="month"><select name="month" id="month" class="formulario">
<option value="Seleccione" selected="selected">Seleccione un mes</option>
<option value="01">Enero</option>
<option value="02">Febrero</option>
<option value="03">Marzo</option>
<option value="04">Abril</option>
<option value="05">Mayo</option>
<option value="06">Junio</option>
<option value="07">Julio</option>
<option value="08">Agosto</option>
<option value="09">Septiembre</option>
<option value="10">Octubre</option>
<option value="11">Noviembre</option>
<option value="12">Diciembre</option>
</select>
</label>
<label for="year"><select name="year" id="year" class="formulario">
<option SELECTED>Seleccione un año</option>

<option>2008</option>
</select>
</label>
<input type="submit" name="Submit" value="Enviar" class="boton">
</form></p>';


echo '<p class="epigrafes"><strong>Mes boletín: '.strftime('%B - %Y',$_SESSION['date']).'</strong></p>';
echo '<hr />';
//fin seleccionar otros meses



////PARA PAGINAR LOS RESULTADOS. CÓDIGO DE PAGINATOR CREADO POR JORGE PINEDO ROSAS CON COLABORACIÓN DE USUARIOS DEL FORO DE PHP DE WWW.FOROSDELWEB.COM


//Sentencia sql (sin limit)
$_pagi_sql = "SELECT * FROM boletin WHERE id_materia like '$epigrafe' AND fecha_insercion LIKE '$fecha_mes%' ";

//cantidad de resultados por página (opcional, por defecto 20)
$_pagi_cuantos = 50;//Elegí un número pequeño para que se generen varias páginas

//cantidad de enlaces que se mostrarán como máximo en la barra de navegación
$_pagi_nav_num_enlaces = 3;//Elegí un número pequeño para que se note el resultado

//Decidimos si queremos que se muesten los errores de mysql
$_pagi_mostrar_errores = false;//recomendado true sólo en tiempo de desarrollo.

//Si tenemos una consulta compleja que hace que el Paginator no funcione correctamente,
//realizamos el conteo alternativo.
$_pagi_conteo_alternativo = true;//recomendado false.

//Supongamos que sólo nos interesa propagar estas dos variables
//$_pagi_propagar = array("$este_mes");//No importa si son POST o GET

//Definimos qué estilo CSS se utilizará para los enlaces de paginación.
//El estilo debe estar definido previamente
$_pagi_nav_estilo = "paginacion";

//definimos qué irá en el enlace a la página anterior
$_pagi_nav_anterior = "&lt;";// podría ir un tag <img> o lo que sea

//definimos qué irá en el enlace a la página siguiente
$_pagi_nav_siguiente = "&gt;";// podría ir un tag <img> o lo que sea


//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

echo $_pagi_sql;
//Leemos y escribimos los registros de la página actual

//echo '<p class="epigrafes"><a href="/imprimir_form_boletin.php?epigrafe='.$epigrafe.'" target="_blank">Imprimir registros</a> </p>';

echo"<p>Mostrando Registros ".$_pagi_info."</p>";


LUEGO VENDRÍAN LA VISUALIZACIÓN DE LOS REGISTROS...

Muchas gracias por vuestro tiempo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:27.