Ver Mensaje Individual
  #16 (permalink)  
Antiguo 27/08/2008, 09:50
jonysi_d
 
Fecha de Ingreso: octubre-2007
Mensajes: 724
Antigüedad: 16 años, 7 meses
Puntos: 4
Respuesta: problema con paginacion

Tienes razon, no pagina...
He buscado otra solucion buscando otro script de paginacion, este si me funciona en remoto, te lo posteo porque quiero modificar alguna cosilla haber si puedes aiudarme:


<?php

$base = "mi base de datos";
$con = mysql_connect("localhost","mi base de datos","contraseña") or die('Error mysql: '.mysql_error());
mysql_select_db($base,$con);

$tbl_name="fotos"; //your table name
// How many adjacent pages should be shown on each side?
$adjacents = 3;

/*
First get total number of rows in data table.
If you have a WHERE clause in your query, make sure you mirror it here.
*/
$query = "SELECT COUNT(*) as num FROM $tbl_name";
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];

/* Setup vars for query. */
$targetpage = "diap-usuarios-provaaaa5.php"; //your file name (the name of this file)
$limit = 2; //how many items to show per page
$page = $_GET['page'];
if($page)
$start = ($page - 1) * $limit; //first item to display on this page
else
$start = 0; //if no page var is given, set start to 0

/* Get data. */
$sql = "SELECT column_name FROM $tbl_name LIMIT $start, $limit";
$result = mysql_query($sql);

/* Setup page vars for display. */
if ($page == 0) $page = 1; //if no page var is given, default to 1.
$prev = $page - 1; //previous page is page - 1
$next = $page + 1; //next page is page + 1
$lastpage = ceil($total_pages/$limit); //lastpage is = total pages / items per page, rounded up.
$lpm1 = $lastpage - 1; //last page minus 1

/*
Now we apply our rules and draw the pagination object.
We're actually saving the code to a variable in case we want to draw it more than once.
*/
$pagination = "";
if($lastpage > 1)
{
$pagination .= "<div class=\"pagination\">";
//previous button
if ($page > 1)
$pagination.= "<a href=\"$targetpage?page=$prev\">« Anterior</a>";
else
$pagination.= "<span class=\"disabled\">« Anterior</span>";

//pages
if ($lastpage < 7 + ($adjacents * 2)) //not enough pages to bother breaking it up
{
for ($counter = 1; $counter <= $lastpage; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";
}
}
elseif($lastpage > 5 + ($adjacents * 2)) //enough pages to hide some
{
//close to beginning; only hide later pages
if($page < 1 + ($adjacents * 2))
{
for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";
}
$pagination.= "...";
$pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
$pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";
}
//in middle; hide some front and some back
elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2))
{
$pagination.= "<a href=\"$targetpage?page=1\">1</a>";
$pagination.= "<a href=\"$targetpage?page=2\">2</a>";
$pagination.= "...";
for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";
}
$pagination.= "...";
$pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
$pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";
}
//close to end; only hide early pages
else
{
$pagination.= "<a href=\"$targetpage?page=1\">1</a>";
$pagination.= "<a href=\"$targetpage?page=2\">2</a>";
$pagination.= "...";
for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";
}
}
}

//next button
if ($page < $counter - 1)
$pagination.= "<a href=\"$targetpage?page=$next\">Siguiente »</a>";
else
$pagination.= "<span class=\"disabled\">Siguiente »</span>";
$pagination.= "</div>\n";
}
?>
<?php
while($row = mysql_fetch_array($result))
{

// Your while loop here

}
?>




<?=$pagination?>

Una de las cosas que quiero modificar es que a la base de datos que está conectodo consta de la siguiente manera:

Tabla: fotos
Campos: fotoid (int/not null/autoincrement ) nombre ( varchar/not null ) usuario ( varchar/not null ) lugarfoto ( varchar/not null ) descripcion (varchar/not null ) foto ( varchar/null ).

y al ser un script copiado de la web pues los campos son completamente distintos de la base de datos a la que esta generado inicialmente el script.
La finalidad de mi script de paginacion es que se visualizen las fotos que tengo en una carpeta remota del servidor las cuales el nombre de cada una de ellas ( las fotos ) se quedan registradas en la base de datos en el campo ( foto ).
Mi pregunta primera que debo modificar del script para que vincule la paginacion con las fotos de la base de datos ???

Última edición por jonysi_d; 27/08/2008 a las 10:01