Multi Column Pagination

Discussion in 'PHP' started by lenmat, Feb 14, 2009.

  1. #1
    I have this perfectly working pagination script, which I have set to display 2 blocks per page as of now. It displays in one column with one block onto of the other. how to i make this 2, 3, ect columns?

    <?php
    // Connects to your Database
    mysql_connect("localhost", "xxxxxxxxxx", "xxxxxxxxxxxxxx") or die(mysql_error());
    mysql_select_db("lenmat_registration") or die(mysql_error());
     
    //This checks to see if there is a page number. If not, it will set it to page 1
    if (!(isset($pagenum)))
    {
    $pagenum = 1;
    }
     
    //Here we count the number of results
    //Edit $data to be your query
    $data = mysql_query("SELECT * FROM usergallery") or die(mysql_error());
    $rows = mysql_num_rows($data);
     
    //This is the number of results displayed per page
    $page_rows = 2;
     
    //This tells us the page number of our last page
    $last = ceil($rows/$page_rows);
     
    //this makes sure the page number isn't below one, or more than our maximum pages
    if ($pagenum < 1)
    {
    $pagenum = 1;
    }
    elseif ($pagenum > $last)
    {
    $pagenum = $last;
    }
     
    //This sets the range to display in our query
    $max = 'limit ' .($pagenum - 1) * $page_rows .',' .$page_rows;
    //This is your query again, the same one... the only difference is we add $max into it
    $data_p = mysql_query("SELECT * FROM usergallery $max") or die(mysql_error());
     
    //This is where you display your query results
    while($info = mysql_fetch_array( $data_p ))
    {
     
    echo "<img src=\"usergallery/{$info['pimage']}\">";  
    echo "<br>";
    echo "<br>";
    echo "<a href=\"member.php?user_id={$info['user_id']}\"> {$info['user_name']}</a>";  
    echo "<br>";
    echo "<br>";
    Print $info['species'];
    echo "<br>";
    echo "<br>";
    Print $info['location'];
    echo "<br>";
    echo "<br>";
    echo "<br>";
    }
    echo "<p>";
     
    // This shows the user what page they are on, and the total number of pages
    echo " --Page $pagenum of $last-- <p>";
     
    // First we check if we are on page one. If we are then we don't need a link to the previous page or the first page so we do nothing. If we aren't then we generate links to the first page, and to the previous page.
    if ($pagenum == 1)
    {
    }
    else
    {
    echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=1'> <<-First</a> ";
    echo " ";
    $previous = $pagenum-1;
    echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$previous'> <-Previous</a> ";
    }
     
    //just a spacer
    echo " ---- ";
     
    //This does the same as above, only checking if we are on the last page, and then generating the Next and Last links
    if ($pagenum == $last)
    {
    }
    else {
    $next = $pagenum+1;
    echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$next'>Next -></a> ";
    echo " ";
    echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$last'>Last ->></a> ";
    }
    ?> 
    PHP:

     
    lenmat, Feb 14, 2009 IP
  2. Danltn

    Danltn Well-Known Member

    Messages:
    679
    Likes Received:
    36
    Best Answers:
    0
    Trophy Points:
    120
    #2
    Danltn, Feb 18, 2009 IP