Pagination Question...

  • Brian Jester
  • Beginner
  • Beginner
  • Brian Jester
  • Posts: 61
  • Loc: Bayonne, New Jersey USA

Post 3+ Months Ago

Hi,

I am trying out a php pagination script (using mysql)...Have it running locally on my test server it works fine, the only problem I am having is that I want the results to be displayed in an html table that can be adjusted. Ex: $tr and $td so I can set those for the amount of rows and columns in the table. A Dynamic Html table.

Here's the entire code (pagination script first, then current code I am using to echo the html) currently it only displays one row of images and I would like it to display more than one row. But would like to be able to adjust it as I said above so I can adjust it according to the resolution.

Code: [ Select ]
<html>
<head><title>Visit My Site - The Next Generation of Web Advertising!</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>

<?php

// Pagnination Script ------------------------------------------------------------------------------------------------------------------------------
    include('config.php');    // include your code to connect to DB.

    $tbl_name="ap_form_1";        //your table name
    // How many adjacent pages should be shown on each side?
    $adjacents = 1;
    
    /*
      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 = "page.php";     //your file name (the name of this file)
    $limit = 6;             //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 * FROM $tbl_name ORDER BY element_4 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\"><< previous </a>";
        else
            $pagination.= "<span class=\"disabled\"><< previous </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\"> next >></a>";
        else
            $pagination.= "<span class=\"disabled\"> next >></span>";
        $pagination.= "</div>\n";        
    }

// End Pagnination Script ------------------------------------------------------------------------------------------------------------------------------
?>
  1. <html>
  2. <head><title>Visit My Site - The Next Generation of Web Advertising!</title>
  3. <link href="style.css" rel="stylesheet" type="text/css">
  4. </head>
  5. <body>
  6. <?php
  7. // Pagnination Script ------------------------------------------------------------------------------------------------------------------------------
  8.     include('config.php');    // include your code to connect to DB.
  9.     $tbl_name="ap_form_1";        //your table name
  10.     // How many adjacent pages should be shown on each side?
  11.     $adjacents = 1;
  12.     
  13.     /*
  14.       First get total number of rows in data table.
  15.       If you have a WHERE clause in your query, make sure you mirror it here.
  16.     */
  17.     $query = "SELECT COUNT(*) as num FROM $tbl_name";
  18.     $total_pages = mysql_fetch_array(mysql_query($query));
  19.     $total_pages = $total_pages[num];
  20.     
  21.     /* Setup vars for query. */
  22.     $targetpage = "page.php";     //your file name (the name of this file)
  23.     $limit = 6;             //how many items to show per page
  24.     $page = $_GET['page'];
  25.     if($page)
  26.         $start = ($page - 1) * $limit;             //first item to display on this page
  27.     else
  28.         $start = 0;                                //if no page var is given, set start to 0
  29.     
  30.     /* Get data. */
  31.     $sql = "SELECT * FROM $tbl_name ORDER BY element_4 LIMIT $start, $limit";
  32.     $result = mysql_query($sql);
  33.   
  34.     /* Setup page vars for display. */
  35.     if ($page == 0) $page = 1;                    //if no page var is given, default to 1.
  36.     $prev = $page - 1;                            //previous page is page - 1
  37.     $next = $page + 1;                            //next page is page + 1
  38.     $lastpage = ceil($total_pages/$limit);        //lastpage is = total pages / items per page, rounded up.
  39.     $lpm1 = $lastpage - 1;                        //last page minus 1
  40.     
  41.     /*
  42.         Now we apply our rules and draw the pagination object.
  43.         We're actually saving the code to a variable in case we want to draw it more than once.
  44.     */
  45.     $pagination = "";
  46.     if($lastpage > 1)
  47.     {    
  48.         $pagination .= "<div class=\"pagination\">";
  49.         //previous button
  50.         if ($page > 1)
  51.            $pagination.= "<a href=\"$targetpage?page=$prev\"><< previous </a>";
  52.         else
  53.             $pagination.= "<span class=\"disabled\"><< previous </span>";    
  54.         
  55.         //pages    
  56.         if ($lastpage < 7 + ($adjacents * 2))    //not enough pages to bother breaking it up
  57.         {    
  58.             for ($counter = 1; $counter <= $lastpage; $counter++)
  59.             {
  60.                 if ($counter == $page)
  61.                     $pagination.= "<span class=\"current\">$counter</span>";
  62.                 else
  63.                     $pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";                    
  64.             }
  65.         }
  66.         elseif($lastpage > 5 + ($adjacents * 2))    //enough pages to hide some
  67.         {
  68.             //close to beginning; only hide later pages
  69.             if($page < 1 + ($adjacents * 2))        
  70.             {
  71.                 for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
  72.                 {
  73.                     if ($counter == $page)
  74.                         $pagination.= "<span class=\"current\">$counter</span>";
  75.                     else
  76.                         $pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";                    
  77.                 }
  78.                 $pagination.= "...";
  79.                 $pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
  80.                 $pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";        
  81.             }
  82.             //in middle; hide some front and some back
  83.             elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2))
  84.             {
  85.                 $pagination.= "<a href=\"$targetpage?page=1\">1</a>";
  86.                 $pagination.= "<a href=\"$targetpage?page=2\">2</a>";
  87.                 $pagination.= "...";
  88.                 for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
  89.                 {
  90.                     if ($counter == $page)
  91.                         $pagination.= "<span class=\"current\">$counter</span>";
  92.                     else
  93.                         $pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";                    
  94.                 }
  95.                 $pagination.= "...";
  96.                 $pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
  97.                 $pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";        
  98.             }
  99.             //close to end; only hide early pages
  100.             else
  101.             {
  102.                 $pagination.= "<a href=\"$targetpage?page=1\">1</a>";
  103.                 $pagination.= "<a href=\"$targetpage?page=2\">2</a>";
  104.                 $pagination.= "...";
  105.                 for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
  106.                 {
  107.                     if ($counter == $page)
  108.                         $pagination.= "<span class=\"current\">$counter</span>";
  109.                     else
  110.                         $pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";                    
  111.                 }
  112.             }
  113.         }
  114.         
  115.         //next button
  116.         if ($page < $counter - 1)
  117.             $pagination.= "<a href=\"$targetpage?page=$next\"> next >></a>";
  118.         else
  119.             $pagination.= "<span class=\"disabled\"> next >></span>";
  120.         $pagination.= "</div>\n";        
  121.     }
  122. // End Pagnination Script ------------------------------------------------------------------------------------------------------------------------------
  123. ?>


Begin table output code

Code: [ Select ]
<div align="center">


<?php

// Table output code

$tr = 4;
$td = 5;

for($i = 0; $i < $tr; $i++)
{
   echo '<tr>';
   for($j = 0; $j < $td; $j++)
   {
   echo '<td>';

while($row = mysql_fetch_array($result))
echo "<img src=\"machform/data/form_1/files/".$row['element_3']."\" border=\"1\" alt=\"".$row['element_1']."\" title=\"".$row['element_1']."\">";
echo "<br />";
echo "Price: $$row[element_4]";

     echo '</td>';
   }
   echo '</tr>';
}

?>

</div>

<?=$pagination?>
<p />
  1. <div align="center">
  2. <?php
  3. // Table output code
  4. $tr = 4;
  5. $td = 5;
  6. for($i = 0; $i < $tr; $i++)
  7. {
  8.    echo '<tr>';
  9.    for($j = 0; $j < $td; $j++)
  10.    {
  11.    echo '<td>';
  12. while($row = mysql_fetch_array($result))
  13. echo "<img src=\"machform/data/form_1/files/".$row['element_3']."\" border=\"1\" alt=\"".$row['element_1']."\" title=\"".$row['element_1']."\">";
  14. echo "<br />";
  15. echo "Price: $$row[element_4]";
  16.      echo '</td>';
  17.    }
  18.    echo '</tr>';
  19. }
  20. ?>
  21. </div>
  22. <?=$pagination?>
  23. <p />
  • Anonymous
  • Bot
  • No Avatar
  • Posts: ?
  • Loc: Ozzuland
  • Status: Online

Post 3+ Months Ago

  • Brian Jester
  • Beginner
  • Beginner
  • Brian Jester
  • Posts: 61
  • Loc: Bayonne, New Jersey USA

Post 3+ Months Ago

Nevermind, figured this one out

Post Information

  • Total Posts in this topic: 2 posts
  • Users browsing this forum: No registered users and 90 guests
  • You cannot post new topics in this forum
  • You cannot reply to topics in this forum
  • You cannot edit your posts in this forum
  • You cannot delete your posts in this forum
  • You cannot post attachments in this forum
 
 

© 1998-2014. Ozzu® is a registered trademark of Unmelted, LLC.