Foros del Web » Programando para Internet » PHP »

otro paginador que no me funciona, ayuda please

Estas en el tema de otro paginador que no me funciona, ayuda please en el foro de PHP en Foros del Web. he cambiado de script para paginar resultados de php-mysql pero los links e indices no me funcionan y no se porque. tengo este codigo en ...
  #1 (permalink)  
Antiguo 24/04/2004, 11:40
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 15 años, 6 meses
Puntos: 5
otro paginador que no me funciona, ayuda please

he cambiado de script para paginar resultados de php-mysql pero los links e indices no me funcionan y no se porque.

tengo este codigo en un archivo llamado indice_html.php:
................
........
Código PHP:
       <?
            
// Conectamos a la Base de Datos
            
include('incluir/conexion.php');
            
$url="http://www.dominio.com/indice_html.php"
            
$tabla="tuto_html"//Nombre de la tabla mysql
            
$condicion="";
            
$pg="0"//Esta sera la pagina actual, si pones "7" mostrara por defecto la pagina 7, luego manten este dato en 0.

            
$cantidad=10//Cantidad de resultados por página.    
            
mysql_select_db($db_base,$db) or die("Connect Error: ".mysql_error());
            include(
'paginar.php');

            
?>

lineas del archivo include:

Código PHP:

if (!isset(
$pg))
$pg 0
$cantidad=10;
$inicial $pg $cantidad;

//Realizamos la busqueda en la BD en funcion de las condiciones iniciales y finales de paginación.
//Basicamente lo que hacemos es mostrar los resultados entre los limites que hemos establecido antes (inicial,cantidad)
// $pegar = "SELECT * FROM $tabla WHERE $condicion=$id LIMIT $inicial,$cantidad";

$pegar "SELECT * FROM $tabla LIMIT $inicial,$cantidad";
$cadena mysql_db_query($db_base,$pegar) or die (mysql_error());

//Calculamos las paginas a mostrar. Realizamos un calculo de la cantidad de resultados a mostrar, y lo almacenamos en la variable $total_records. Finalmente calculamos las paginas de resultados que vamos a mostrar, dividiendo los resultados entre la cantidad de resultados por pagina ( $total_records / $cantidad)

$contar "SELECT * FROM tuto_html"
$contarokmysql_db_query($db_base,$contar) or die("Connect Error: ".mysql_error());
$total_records mysql_num_rows($contarok) or die("Connect Error: ".mysql_error());
$pages intval($total_records $cantidad);

// Imprimiendo los resultados
// Usamos por defecto los arrays: title y description. En tu caso usa los de tu tabla. Este punto es totalmente configurable.
echo '<table width="80%" border="0" cellspacing="0" cellpadding="0">';
while(
$array mysql_fetch_array($cadena)) 

{

print (
"<TR ALIGN=CENTER VALIGN=TOP><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\"><a href=\"$array[url]\" target=\"_blank\"><b>$array[titulo]</b></a></font></br></TD>\n");


print (
"<TR ALIGN=CENTER VALIGN=TOP><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\">$array[autor]</a></font></TD></br></br>");

//Como ves, nos muestra el titulo $array[title], con un enlace hacia su web $array[url] , y una descripcion $array[description]. Como ya te hemos dicho, usa esto en función de tus necesidades, y configuralo como quieras, añadiendo todo el codigo html que te de la gana.


echo 
"</table>";
// Cerramos la conexión a la base de datos. Esta medida, siempre nos dara seguridad. 

$conexion mysql_close($db) or die("Connect Error: ".mysql_error());

// Creando los enlaces de paginación ******* AQUI *******

for ($i 0$i <= $pages$i++) 
{
if (
$i == $pg
{
echo 
"<b><u>$i</u></b>&nbsp;";
}
elseif (
$i == AND $pg >0
{
echo 
"<a href='$dir/busqueda/$q.php'>$i&nbsp;</a>";

else 
{
echo 
"<a href='$dir/resultado/$q-$i.php'>".$i."</a>&nbsp;";
}
}

?> 

Gracias y espero su ayudita.
  #2 (permalink)  
Antiguo 24/04/2004, 14:40
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 14 años, 3 meses
Puntos: 0
estaria bueno saber el error que te sale al ejecutar el codigo.
Tambien estaria bueno saber, lo estas probando en un servidor en la red, o en tu propia pc.
Saludos.
  #3 (permalink)  
Antiguo 24/04/2004, 19:18
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 15 años, 6 meses
Puntos: 5
Sale listados los 10 primeros registros con un titulo y demas, pero cada titulo que aparece es un link que debe llevarme al articulo completo, pero esa es la teoria, en realidad sale los registros como links pero apuntan al propio dominio como url.

Por otra parte, calcula bien el numero de paginas de resultados, pero si quiero pasar a la pagina 2 sale esto :

http://www.dominio.com/resultado/-1.php


cuando el directorio resultado no existe y el -1 ni idea.

como veis me perdi dentro de este codigo y no se salir de el.
  #4 (permalink)  
Antiguo 25/04/2004, 12:49
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
hola te recomiendo una clase bastante sencilla pero MUY EFICAZ hecha por un muchacho de este foro JPINEDO........la pagina es:
http://depiura.webcindario.com/jpine...-paginator.php esta bien documentada te puede servir de guia.....pero para que "reinventar la rueda" (como dice mi amigo CLUSTER)......ahora bien si necesitas algo mas potente esta la super-clase de paginacion de Webstudio.

Un Saludo.
__________________
Lo que se hace por AMOR esta mas allá del BIEN y del MAL - Friedrich Nietzsche
http://www.hispanogeek.com.ar
Desarrollador IT -
  #5 (permalink)  
Antiguo 25/04/2004, 14:03
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 15 años, 6 meses
Puntos: 5
gracias.

me pondre otra vez con el paginator-
  #6 (permalink)  
Antiguo 25/04/2004, 19:11
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 14 años, 3 meses
Puntos: 0
es que el error que ahi es que esta mal programado, es decir la lógica del codigo no funciona,

Mira em primer lugar en la ultima lina donde imprimis los numeros de páginas que ahi despues esta mal el link, pero aun así no es muy efectico lo que estas queriando aser.

Tenes que lograr guardas dos variables en los numeros 1,2,3.... y volver a pedir una llamada a ese páginador con tus nuevas variables que tiene una variable $inicio, $final y paginar desde $inicio, y $final como limite de la consulta a la base de datos.

por ejemplo al imprimir los numero podrias hacer esto
echo("<a href=\"paginador.php?inicio=$inicio&final=$final\" >$numeroDePaginas</a>");

osea la gracia esta en conservar desde donde queres empezar y donde queres terminar.
Se te aclaro algo?
  #7 (permalink)  
Antiguo 25/04/2004, 19:27
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 14 años, 5 meses
Puntos: 2
El link es este

http://jpinedo.webcindario.com
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #8 (permalink)  
Antiguo 08/05/2004, 21:34
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Pues yo también recomiendo el Paginator como un primer acercamiento, ya que es muy amigable y fácil de entender... pero una vez entendida la lógica, lo mejor sería utilizar una clase como la de webstudio.

Y gracias Gerald por poner el link correcto. La otra dirección estaba primero y aparecía en los comentarios del código. Luego la actualicé gracias a una observación de epplestun. Supongo que fmmeson fue de los primeros en descargarlo, por eso tiene esa dirección.

Saludos
  #9 (permalink)  
Antiguo 08/05/2004, 21:38
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 14 años, 5 meses
Puntos: 2
de nada local
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
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 07:23.