Помощ за фенкция

mizarck

Registered
Здравейте,
опитвам се да няправя фенкция която да показва страниците при страницирането но се натъкнах на провлем и вече с часове го мъга и не мога да го измисля за това се обръщам към вас
ето кода
Код:
<?php
function indexing($ch,$g)
{
	$ch++;
	$g = $g-2;
	$g1 = $g-1;
	if ($ch == 1 || $ch == 2)
	{
		for ($i=1,$i2=0;$i<=5;$i++,$i2++)
		{
			if ($ch == $i)
			{
				$index .= "<font color=\"#B6ADAD\" size=\"+1\"><b> [ $ch ] </b></font>";
			}else
			{
				$index .= "<a href=\"?page=users&s=$i2\"><font color=\"#928787\" size=\"+1\"> $i </font></a>";
			}
		}
	}elseif ($ch > 2 && $ch <= $g)
	{
		$s = $ch-2;
		$p = $s-1;
		$e = $ch+2;
		while ($s<=$e)
		{
			if ($s == $ch)
			{
				$index .= "<font color=\"#B6ADAD\" size=\"+1\"><b> [ $s ] </b></font>";
			}else
			{
				$index .= "<a href=\"?page=users&s=$p\"><font color=\"#928787\" size=\"+1\"> $s </font></a>";
			}
			$p++;
			$s++;
		}
	}
	echo "$index";
}
$get = $_GET['page'];
indexing($get,50);
$get++;
echo "<br><a href=\"?page=$get\"><h1><b>NEXT</b></h1></a>";
?>
функцията приема 2 числа
първото показва страницата
второто колко са общо страниците
всичко си работи перфектно обаче проблема идва при последните 2 изкарвания

функцията трябва да работи така
при първите 2 изкарвания трябва да са така
[ 1 ] 2 3 4 5
и
1 [ 2 ] 3 4 5
и вече всяко следващо изкарване до последните 2 трябва да извежда текущатат страница в квадратни скоби и пред нея линк към предните 2 страници а зад ния следващите 2 страници
всичко си работи без последната част която не съм включил в скрипта защото с нея вообще не работи
та
последните 2 изкарвания трябва да са
46 47 48 [ 49 ] 50
и
46 47 48 49 [ 50 ]
но забих и нз как да го направя
ПЛС някой ако знае как да го направя да работи напълно ще съм мумного благодарен
 
ето функцията
Код:
function pager($page,$all)
{
	if ($page <= $all)
	{
		$allt = $all-1;
		if ($page < 3)
		{
			$p1_1 = 1;
			$p1_2 = 5;
		}elseif ($page == $all || $page == $allt)
		{
			$p1_1 = $all-4;
			$p1_2 = $all;
		}else
		{
			$p1_1 = $page-2;
			$p1_2 = $page+2;
		}
		for ($i=$p1_1;$i<=$p1_2;$i++)
		{
			if ($page == $i)
			{
				echo "<b>$i</b><br>";
			}else
			{
				echo "$i<br>";
			}
		}
	}
}

На функцията се задават 2 параметъра page и all
page е страницата а all брой всички страници
 

Back
Горе