Tema: Paginar...
Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/08/2005, 02:59
Jaime0404
 
Fecha de Ingreso: octubre-2003
Mensajes: 32
Antigüedad: 20 años, 5 meses
Puntos: 0
Pregunta Paginar...

Hola!

Estoy tratando de agregar el Paginator (script de JPinedo que realiza la paginación) a mi proyecto, pero no puedo hacer que funcione (llevo dias intentando resolverlo, pero no puedo) .

La situacion es esta: a partir de dos listas dependientes (selects) quiero armar la consulta ($_pagi_sql) que recibe el paginator. La pagina que tengo esta conformada por tres frames, en el primero estan las dos listas dependientes (enlazadas a base de datos). En el segundo frame es donde quiero que se muestren los resultados de la paginacion.

¿Como armo la consulta SQL a partir de lo seleccionado en los dos selects?
¿Como hago que lo seleccionado (el valor) en el 1er select no se pierda?
¿Como puedo hacer para que los datos (consulta) de la paginacion sean mostrados en el otro frame?

Gracias.


Este es el codigo que ocupo en top.php (1er frame):

<?
require ("usuario/aut_config.inc.php"); // incluir configuracion.
$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error());
mysql_select_db("$sql_db") or die(mysql_error());
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF">
<?
if (!empty($_POST['enviado'])){

// Procesar el formulario ...
echo "Procesando formulario:<br>";
echo "Recibido id_tabla_padre: ".$_POST['id_padre']."<br>";
echo "Recibido id_tabla_hija: ".$_POST['id_hija'];
$_pagi_sql = "SELECT * FROM $sql_tabla WHERE especialidad='$id_padre' AND colonia='$id_hija'";
echo $_pagi_sql;
} else {

$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error());
mysql_select_db("$sql_db") or die(mysql_error());

// Obtener el $id_padre del envio a si mismo del formulario ..
$id_padre=$_POST['id_padre'];
// Inicio Formulario .. PHP_SELF enviamos a si mismo (a este script).
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">\n\n";

// Formar Selec "Padre".
echo "<select name=\"id_padre\" onChange=\"this.form.submit()\">\n";
echo "<option value=\"\"> <---Especialidad---> </option>\n";

$consulta_padre = mysql_query("SELECT * FROM $sql_tabla GROUP BY especialidad") or die("No se pudo realizar la consulta a la Base de datos");

While ($registro_padre=mysql_fetch_assoc($consulta_padre )){
// Se mira si el ID del registro es el mismo q el $id_padre q recibimos si hemos cambiado el select hijo.
// Se selecciona en consecuencia (selected) la opción elegida.
if ($id_padre == $registro_padre['ID']){
echo "<option value=\"".$registro_padre['especialidad']."\">".$registro_padre['especialidad']."</option>\n";
} else {
echo "<option value=\"".$registro_padre['especialidad']."\">".$registro_padre['especialidad']."</option>\n";
}
}
echo "</select>\n\n<br>";

mysql_free_result($consulta_padre); // Liberar memoria usada por consulta.

// Formar Select "Hijo"
echo "<select name=\"id_hija\">\n";

// Si $id_padre no tiene valor (caso de que no se ha seleccionado ningua opcion del select hijo
// se muestra el mensaje de "seleccine un item" (del select padre).
if (!empty($id_padre)){

$consulta_hija = mysql_query("SELECT * FROM $sql_tabla WHERE especialidad='$id_padre' GROUP BY colonia ORDER BY colonia") or die("No se pudo realizar la consulta a la Base de datos");

// se mira el total de registros de la consulta .. si es 0 se muestra mensaje en el select ..
if (mysql_num_rows($consulta_hija) != 0){
While ($registro_hija=mysql_fetch_assoc($consulta_hija)) {
echo "<option value=\"".$registro_hija['colonia']."\">".$registro_hija['colonia']."</option>\n";
}
} else {
echo "<option value=\"\"> No hay registros para este elemento </option>";
}
} else {
echo "<option value=\"\"> <-- Seleccione un elemento </option>";
}

mysql_free_result($consulta_hija); // Liberar memoria usada por consulta.

echo "</select>\n\n<br>";
echo "<input type=\"submit\" name=\"enviado\" value=\" Enviar \" >\n\n";
echo "</form>\n";
}
?>
</body>
</html>



Este es el codigo que ocupo en main.php (2do frame):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?
include("paginator.inc.php");
?>
</body>
</html>