Странициране на резултати

LuDa_KaTeRiCa

Registered
Не знам дали това е правилния раздел, но моля ви помогнете ! :o

Значи имам една Counter Strike система.

Дали ще може да ми обясните как да страницирам това , защото правя нещо но не става както трябва!


Код:
<link rel="stylesheet" type="text/css" href="css/style.css" />
<?php

echo ('<div id="">');
echo ('<center>');


$server = "localhost"; 
$dbusername = "root"; 
$dbpassword = "**********"; 
$db_name = "cs_sistem";
$table_name = "servers"; 

$pp = "10";
 

$page=$_GET['page']; 

if(!$_GET['page']) 
{ 
$page="1"; 
}
$limit = ($pp*$page)-$pp; 

mysql_connect($server, $dbusername, $dbpassword)or die("1111"); 
@mysql_select_db($db_name) or die("2222"); 
$redove=mysql_query("SELECT * FROM $table_name"); 

$max=mysql_numrows($redove);  
$total=ceil($max/$pp); 




mysql_connect($server, $dbusername, $dbpassword)or die("3333"); 
@mysql_select_db($db_name) or die("4444"); 
$query="SELECT * FROM $table_name ORDER BY `id` DESC LIMIT $limit,$pp"; 
$result=mysql_query($query); 

$num=mysql_numrows($result); 

mysql_close(); 

$i=0;
while($row = mysql_fetch_array($result)) { 
$id = $row['id']; 
$name = $row['name']; 
$ip = $row['ip']; 
$port = $row['port']; 
$cheat = $row['cheat']; 
$type = $row['type']; 
$website = $row['website'];


echo "<div id='hoverman'><table cellpadding='0' cellspacing='0' style='border: #000000 1px solid;padding-left: 3px;width:100%
'>
<td style='border: #cccccc 1px solid;background: #FFFFFF;'><a href='info.php?id=$id'><span style='color:#000000'>$name<br>$ip:$port</span></a></td><td style='border: '#cccccc' 1px solid;background: #FFFFFF;'>

</table><center></div>";
}


for ($i=1;$i<=$pp;$i++) {
if ($page != $i) {
echo "<a href=\"?page=$i\">$i</a> ";
} else {
echo "$i ";
}

} 

echo "";
echo ('</center>');
echo ('</div>');
?>
 
Това трябва да ти помогне

Код:
<?php
	include('config.php');

	$tbl_name="";		//име на таблицата
	// По колко резултати да се показват на една страница
	$adjacents = 3;
	
	/* 
	   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 = "pagenation.php"; 	//името на файла
	$limit = 2; 								//колко елементи да са показани на страницата
	$page = $_GET['page'];
	if($page) 
		$start = ($page - 1) * $limit; 			//first item to display on this page
	else
		$start = 0;								//ако не е дадена страница Var, определени започне до 0
	
	/* Get data. */
	$sql = "SELECT column_name FROM $tbl_name LIMIT $start, $limit";
	$result = mysql_query($sql);
	
	/* Setup page vars for display. */
	if ($page == 0) $page = 1;					//при липса на страницата Var се дава, по подразбиране до 1.
	$prev = $page - 1;							//предишна страница - 1
	$next = $page + 1;							//следваща страница + 1
	$lastpage = ceil($total_pages/$limit);		//закръгля страници
	$lpm1 = $lastpage - 1;						//предишна страница минус 1
	
	/* 
		Сега ние прилагаме нашите правила и да обект пагинация.
		Ние сме всъщност спасяването на код на променлива в случай, че искате да го привлече повече от веднъж.
	*/
	$pagination = "";
	if($lastpage > 1)
	{	
		$pagination .= "<div class=\"pagination\">";
		//бутин назад
		if ($page > 1) 
			$pagination.= "<a href=\"$targetpage?page=$prev\">« previous</a>";
		else
			$pagination.= "<span class=\"disabled\">« previous</span>";	
		
		//страници
		if ($lastpage < 7 + ($adjacents * 2))	//недостатъчно страници малко са и се виждат
		{	
			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))	//достачъно страници някои се скриват
		{
			//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";		
	}
?>

	<?php
		while($row = mysql_fetch_array($result))
		{
	
		// Your while loop here
	
		}
	?>

<?=$pagination?>
 
<link rel="stylesheet" type="text/css" href="css/style.css" />
<style>
#page { }
#pageh { }
</style>

<?php

echo ('<div id="">');
echo ('<center>');


$server = "localhost";
$dbusername = "root";
$dbpassword = "**********";
$db_name = "cs_sistem";
$table_name = "servers";
mysql_connect($server, $dbusername, $dbpassword)or die("1111");
@mysql_select_db($db_name) or die("2222");

$page = (int)$_GET['page'];
if($page == 0 || $page == NULL || $page < 0)
{
$page = 1;
}
$pp = 10;
$start = ($page*$pp) - $pp;
$qu = mysql_query("SELECT * FROM $table_name ");
$broi = mysql_num_rows($query);
$total = ceil($broi/$pp);

$query=mysql_query("SELECT * FROM $table_name ORDER BY `id` DESC LIMIT $start,$pp")or die(mysql_error());

while($row = mysql_fetch_array($result)) {
$id = $row['id'];
$name = $row['name'];
$ip = $row['ip'];
$port = $row['port'];
$cheat = $row['cheat'];
$type = $row['type'];
$website = $row['website'];


echo "<div id='hoverman'><table cellpadding='0' cellspacing='0' style='border: #000000 1px solid;padding-left: 3px;width:100%
'>
<td style='border: #cccccc 1px solid;background: #FFFFFF;'><a href='info.php?id=$id'><span style='color:#000000'>$name<br>$ip:$port</span></a></td><td style='border: '#cccccc' 1px solid;background: #FFFFFF;'>

</table><center></div>";
}
echo "<div color:#fff;'>";


if (!$page or ($page > $total)) {
$page="1";
}

if ($total < 10) {
for($i=1 ; $i<=$total ; $i++) {
if ( ($page)==$i ) {
echo "<b id='page'>$i</b> ";
}
else {
echo "<a id='pageh' href=\"?page=".$i."\"><b>".$i."</b></a> ";
}
}
}
else {
for($i=1 ; $i<=3 ; $i++) {
if ( ($page)==$i ) {
echo "<b id='page'>$i</b> ";
}
else {
echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}
}

if ($page <= 3) {
if ($page == 3) echo "<a id='pageh' href=\"?page=4\">4</a> ";
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}
if ($page == 5) $parva.= "<a id='pageh' href=\"?page=4\">4</a> ";

if ( ($page == 4) or ($page == 5) ) {
for ($i=$page; $i<=$page+1; $i++) {
if ($page == $i) echo "<b id='page'>$i</b> ";
else echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}

if ( ($page > 5) and ($page < ($total - 4)) ) {
echo "... ";
for ($i=$page-1; $i<=$page+1; $i++) {
if ($page == $i) echo "<b id='page'>$i</b> ";
else echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}
echo "... ";
for ($i=$total-2; $i<=$total; $i++)
echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}

if ( $page > ($total - 5) ) {
echo "... ";
for ($i=$total-5; $i<=$total; $i++) {
if ($page == $i) echo "<b id='page'>$i</b> ";
else echo "<a id='pageh' href=\"?page=".$i."\">".$i."</a> ";
}
}
}


echo"</div>";


echo ('</center>');
echo ('</div>');
?>

ето ти нещо по разбираемо :D оправи си само div-овете ;)
 
LuDa_KaTeRiCa каза:
Дава ми грешка на 28 и 33 ред
т.е
тук $broi = mysql_num_rows($query);
и
тук while($row = mysql_fetch_array($result)) {
оф да извинявай ето така ще е
Код:
$broi = mysql_num_rows($qu);
while($row = mysql_fetch_array($query)) {
 
Ето, направих ти го по-разбираемо, дано ти помогне, аз го ползвам и нямам никакви проблеми :)

Код:
<?php
	include('config.php');

	$tbl_name="table";   //името на таблицата
	$adjacents = 3;
	$query = "SELECT COUNT(*) as num FROM $tbl_name";
	$total_pages = mysql_fetch_array(mysql_query($query));
	$total_pages = $total_pages[num];
	
	$targetpage = "index.php"; 	//името на файла, на които са резултатите
	$limit = 10; 								//колко елементи да са показани на страницата
	$page = $_GET['page'];
	if($page) 
		$start = ($page - 1) * $limit; 			//first item to display on this page
	else
		$start = 0;								//ако не е дадена страница Var, определени започне до 0
	
	/* Get data. */
	$sql = "SELECT * FROM $tbl_name LIMIT $start, $limit";
	$result = mysql_query($sql);
	
	/* Setup page vars for display. */
	if ($page == 0) $page = 1;					//при липса на страницата Var се дава, по подразбиране до 1.
	$prev = $page - 1;							//предишна страница - 1
	$next = $page + 1;							//следваща страница + 1
	$lastpage = ceil($total_pages/$limit);		//закръгля страници
	$lpm1 = $lastpage - 1;						//предишна страница минус 1
	
	/* 
		Сега ние прилагаме нашите правила и да обект пагинация.
		Ние сме всъщност спасяването на код на променлива в случай, че искате да го привлече повече от веднъж.
	*/
	$pagination = "";
	if($lastpage > 1)
	{	
		$pagination .= "<div class=\"pagination\">";
		//бутин назад
		if ($page > 1) 
			$pagination.= "<a href=\"$targetpage?page=$prev\">« Назад</a>";
		else
			$pagination.= "<span class=\"disabled\">« Назад</span>";	
		
		//страници
		if ($lastpage < 7 + ($adjacents * 2))	//недостатъчно страници малко са и се виждат
		{	
			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))	//достачъно страници някои се скриват
		{
			//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\">Напред »</a>";
		else
			$pagination.= "<span class=\"disabled\">Напред »</span>";
		$pagination.= "</div>\n";		
	}
?>




<?php echo $pagination; ?>
 
Е тфа е да си бахти и пича 8) 8) 8) МЕРСИ !


А случайно да знаеш код дето като цъкнеш на AIM или каквато категория избереш да я изкарва. Щото сега има опцията да показва всички сървъри!

Ако трябва нещо сял да давам само кажи и пак МЕРСИ :?: :?: :?: :?:
 
LuDa_KaTeRiCa каза:
Е тфа е да си бахти и пича 8) 8) 8) МЕРСИ !


А случайно да знаеш код дето като цъкнеш на AIM или каквато категория избереш да я изкарва. Щото сега има опцията да показва всички сървъри!

Ако трябва нещо сял да давам само кажи и пак МЕРСИ :?: :?: :?: :?:

Еми най-лесното е да си направиш различни страници за различните категории, аз така правя :)
 
koko13 каза:
LuDa_KaTeRiCa каза:
Е тфа е да си бахти и пича 8) 8) 8) МЕРСИ !


А случайно да знаеш код дето като цъкнеш на AIM или каквато категория избереш да я изкарва. Щото сега има опцията да показва всички сървъри!

Ако трябва нещо сял да давам само кажи и пак МЕРСИ :?: :?: :?: :?:

Еми най-лесното е да си направиш различни страници за различните категории, аз така правя :)
а с един get няма ли да стане ??? :D представи си че има 20 категории :D

катерица пусни тема с sql на категориите и сърварите и точно какво искаш и ще ти го направя :)
 

Back
Горе