Pagina 1 van 1

Pagination vraag

Geplaatst: 25 sep 2006, 20:25
door Yellow
Bij de pagination in viewforum en viewtopic wil ik dat de pagina waar je op bent ook een link wordt.

Dus bijv staat er dit:
Ga naar Pagina 1, 2 Volgende


En je zit op pagina 1, dan is pagina 1 geen link. Als je op pagina 2 zit, is pagina 2 geen link, etcetera...

Hoe maak je dat alle paginanummertjes gewoon een link worden?

Ik weet dat ik daarvoor in includes/functions.php moet zitten, alleen wat moet je veranderen?

Code: Selecteer alles

//
// Pagination routine, generates
// page number sequence
//

function generate_pagination($base_url, $num_items, $per_page, $start_item, $add_prevnext_text = TRUE)
{
	global $lang;

	$total_pages = ceil($num_items/$per_page);

	if ( $total_pages == 1 )
	{
		return '';
	}

	$on_page = floor($start_item / $per_page) + 1;

	$page_string = '';
	if ( $total_pages > 10 )
	{
		$init_page_max = ( $total_pages > 3 ) ? 3 : $total_pages;

		for($i = 1; $i < $init_page_max + 1; $i++)
		{
			$page_string .= ( $i == $on_page ) ? '<b>' . $i . '</b>' : '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>';
			if ( $i <  $init_page_max )
			{
				$page_string .= ", ";
			}
		}

		if ( $total_pages > 3 )
		{
			if ( $on_page > 1  && $on_page < $total_pages )
			{
				$page_string .= ( $on_page > 5 ) ? ' ... ' : ', ';

				$init_page_min = ( $on_page > 4 ) ? $on_page : 5;
				$init_page_max = ( $on_page < $total_pages - 4 ) ? $on_page : $total_pages - 4;

				for($i = $init_page_min - 1; $i < $init_page_max + 2; $i++)
				{
					$page_string .= ($i == $on_page) ? '<b>' . $i . '</b>' : '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>';
					if ( $i <  $init_page_max + 1 )
					{
						$page_string .= ', ';
					}
				}

				$page_string .= ( $on_page < $total_pages - 4 ) ? ' ... ' : ', ';
			}
			else
			{
				$page_string .= ' ... ';
			}

			for($i = $total_pages - 2; $i < $total_pages + 1; $i++)
			{
				$page_string .= ( $i == $on_page ) ? '<b>' . $i . '</b>'  : '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>';
				if( $i <  $total_pages )
				{
					$page_string .= ", ";
				}
			}
		}
	}
	else
	{
		for($i = 1; $i < $total_pages + 1; $i++)
		{
			$page_string .= ( $i == $on_page ) ? '<b>' . $i . '</b>' : '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>';
			if ( $i <  $total_pages )
			{
				$page_string .= ', ';
			}
		}
	}

	if ( $add_prevnext_text )
	{
		if ( $on_page > 1 )
		{
			$page_string = ' <a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $on_page - 2 ) * $per_page ) ) . '">' . $lang['Previous'] . '</a>&nbsp;&nbsp;' . $page_string;
		}

		if ( $on_page < $total_pages )
		{
			$page_string .= '&nbsp;&nbsp;<a class="pagination" href="' . append_sid($base_url . "&start=" . ( $on_page * $per_page ) ) . '">' . $lang['Next'] . '</a>';
		}

	}

	$page_string = $lang['Goto_page'] . ' ' . $page_string;

	return $page_string;
}

Geplaatst: 28 sep 2006, 18:08
door Yellow
Niemand? :wink:

Geplaatst: 30 sep 2006, 15:36
door Yellow
:?:

Geplaatst: 30 sep 2006, 18:30
door svenn
probeer eens met dit : backup want ik weet het heeelemaal niet zeker

zoek

Code: Selecteer alles

$page_string .= ($i == $on_page) ? '<b>' . $i . '</b>' : '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>'; 
vervang

Code: Selecteer alles

$page_string .= '<a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a>'; 

Geplaatst: 01 okt 2006, 22:25
door Yellow
Nee werkt niet, er veranderd gewoon niks.

Geplaatst: 02 okt 2006, 16:38
door svenn
3 keer verandert ?

Geplaatst: 03 okt 2006, 15:54
door Yellow
Dacht dat ik het maar 1 keer moest veranderen, en kon het ook maar 1 keer vinden. Heb het nu 3 x veranderd en het werkt :thumb: thx

Geplaatst: 04 okt 2006, 18:25
door Yellow
Nog een vraag met betrekking hierop, hoe krijg je onder het paginanummer waar je zit een streepje.

Bijv je zit op pagina 3, dan wordt het zo:

pagina 1,2,3,4,5

Geplaatst: 04 okt 2006, 18:30
door svenn
vervang deze met deze :

Code: Selecteer alles

$page_string .= '<u><a class="pagination" href="' . append_sid($base_url . "&start=" . ( ( $i - 1 ) * $per_page ) ) . '">' . $i . '</a></u>'; 

Geplaatst: 04 okt 2006, 19:11
door Yellow
Dan komt dat streepje toch onder alle cijfers? En niet alleen onder het paginanummer waar je zit...?

Geplaatst: 09 okt 2006, 22:45
door Yellow
??

Geplaatst: 21 jan 2007, 16:49
door Yellow
??

Geplaatst: 26 jan 2007, 15:18
door Yellow
Niemand?