View Single Post
Old 04-23-2006, 07:17 PM   #1 (permalink)
arch13
Loves my girl in thongs
 
arch13's Avatar
 
Location: North of Mexico, South of Canada
{PHP} Prev Next code for a gallery

Edit: Got it working. Please see my post below. I edited the php in this post to show the working function.

Reference Page:
http://www.arch13.com/index.php?id=brewery&id2=2

I have a function I found that I can't seem to modify to save my life. I'd like to humbly ask for help from the TFP members...

I am trying to get a page to print < 1 >, where clicking on either "arrow" takes you to the next page (In this case an image)

The first error occurs at line two, where it does not like the "{"
The basic code follows:

PHP Code:
  function navigation($pre_href $post_href=''$num_items$items_per_page$active$nearby$threshold)
{
    
# … is the ellipse character: "..."
    
$space '<span class="spacer"> … '."\n\t".'</span>';

    
# There's no point in printing this string if there are no items,
    # Or if they all fit on one page.
    
if ($num_items && $num_items $items_per_page)
    {
        
# STEP 1:
        # Force variables into certain values.

        # $items_per_page can't be smaller than 1!
        # Also, avoid division by zero later on.
        
$items_per_page max($items_per_page1);

        
# Calculate the number of listing pages.
        
$total ceil($num_items/$items_per_page);

        
# $active can't be higher than $total or smaller than 1!
        
$active maxmin($active,$total), 1);

        
# STEP 2:
        # Do the rest.

        # Get the sequence of pages to show links to.
        
$pages navigationSequence($total$active$nearby$threshold);
        
        
# Print a descriptive string.
        
$first = ($active-1)*$items_per_page 1;
        
$last  min($first+$items_per_page-1$num_items);
        if (
$first == $last)
            
$listing $first;
        else
            
# – is the EN dash, the proper hyphen to use.
            
$listing $first.'–'.$last;
        
$r '<p class="navigation">'."\n\tShowing $listing of $num_items<br />\n";
    
        
# Initialize the list of links.
        
$links = array();
    
        
# Add "previous" link.
        
if ($active && $total 1)
            
$links[] = '<a href="'.$pre_href.($active-1).$post_href.
                       
'" class="prev" title="Previous">&laquo;</a>';
    
        
# Decide how the each link should be presented.
        
for($i=0$i<sizeof($pages); $i++)
        {
            
# Current link.
            
$curr $pages[$i];

            
# See if we should any $spacer in connection to this link.
            
if ($i>AND $i<sizeof($pages)-1)
            {
                
$prev $pages[$i-1];
                
$next $pages[$i+1];

                
# See if we should any $spacer *before* this link.
                # (Don't add one if the last link is already a spacer.)
                
if ($prev $curr-AND $links[sizeof($links)-1] != $space)
                    
$links[] = $space;
            }

            
# Add the link itself!
            # If the link is not the active page, link it.
            
if ($curr != $active)
                
$links[] = '<a href="'.$pre_href.$curr.$post_href.'">'.$curr.'</a>';
            
# Else don't link it.
            
else
                
$links[] = '<strong class="active">'.$active.'</strong>';

            if (
$i>AND $i<sizeof($pages)-1)
            {
                
# See if we should any $spacer *after* this link.
                # (Don't add one if the last link is already a spacer.)
                
if ($next $curr+AND $links[sizeof($links)-1] != $space)
                    
$links[] = $space;
            }
        }
    
        
# Add "next" link.
        
if ($active $total && $total 1)
            
$links[] = '<a href="'.$pre_href.($active+1).$post_href.
                       
'" class="next" title="Next">&raquo;</a>';
    
        
# Put it all together.
        
$r .= "\t".implode($links"\n\t")."\n</p>\n";
        
$r str_replace("\n\t".$space."\n\t"$space$r);

        return 
$r;
    }
    else
        return 
false;

This worries me also, but I can't even get the script to get far enough to see if it works:
PHP Code:
$pre_href='index.php?id=brewery&id2=' 
It's spitting out errors like crazy!
Mostly syntax based. I'm what they call "Know just enough to screw it up"

I just want next and previous links for a photo gallery!
__________________
Seen on an employer evaluation:

"The wheel is turning but the hamsters dead"
____________________________
Is arch13 really a porn diety ? find out after the film at 11.
-Nanofever

Last edited by arch13; 04-25-2006 at 06:43 PM..
arch13 is offline  
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62