малък проблем относно урока с прелистването

burkoff

Registered
Здр.
значи смесих една турсачка с урока за прелистванетно но се появи малък проблем търсачката работи но примерно сам настроил да ми се покажат 10 резултата на страница а има 12 бр от търсенето ... показва ми се страница 2 с още 2 резултата но прелистването продължата без картинки .Скрих числата и така може да се позлва но искам да е както хората ...
според мен проблема е в реда $maxPage =
ето ми и сорса всичко ми работи
Код:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>
<style>
#style {font-size:10;font-family:Verdana;color:#23384B}
#text {font-size:10;font-family:Verdana;color:#C10000;textdecoration:bold}
A:over {font-size:10;font-family:Verdana;color:#000000;textdecoration:none}
</style>
<form action="?" method="GET">
<input type="text" name="search" />
<input type="submit" value="търсене" />
</form>
<?

$searchw = $_GET['search'];


$user=""; //user на базата данни
$password=""; //pass на базата данни
$database=""; //име на базата данни
mysql_connect(localhost,$user,$password);
mysql_select_db($database) or die( "Unable to select database");

// определяме колко реда да ни показва. В случая 20 на страница.
$broinastranica = 10;

// от коя страница да почне да показва.Може да искаме да е от втора или от последна.
$pageNum = 1;

// ако има получени данни $_GET['page'] ще покаже страницата с номер $_GET['page']
if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}

//тука определяме кои редове ще се показват - примерно ако $_GET['page']=2
// ще покаже от 20 до 40-ти ред.
$redove = ($pageNum - 1) * $broinastranica;
//заявката ще върне само посочените редове - примерно от 20 до 40 в зависимост от $_GET['page']
$search = explode (" ",$search );


$query = "SELECT * FROM bor WHERE model LIKE '%$search[0]%' OR model LIKE '$search[1]' OR model LIKE '$search[2]' OR suma LIKE '%$search[0]%' OR suma LIKE '$search[1]' OR suma LIKE '$search[2]' OR grad LIKE '%$search[0]%' OR grad LIKE '$search[1]' OR grad LIKE '$search[2]' ORDER BY posted_on DESC " . " LIMIT $redove, $broinastranica ";

$result = mysql_query($query) or die('Error1, query failed');
//$n = mysql_fetch_array($result);
//$n = mysql_fetch_array($result, MYSQL_NUM); 
//$broirezultati = count($n);

	


//echo "<table border=1>";
// print-ваме посочените редове в таблица.
while($row = mysql_fetch_array($result))

{


//izkarvane na sudarjanieto w tablica
	$tip2color = $row[tip];
	$p = $row[model];
	$d= $row[data];
	include "go.php"; //masiva
	
	
	
	echo "<table id='style' border='0' width='400'>";
	echo "<tr>";
	echo "<td width='2%'></td>";
	echo "<td width='98%' bgcolor='$imgs[$tip2color]'> <b>$row[tip]</b></td>";
	echo "</tr>";
	echo "</table>";
	echo "<table id='style' width='400' border='0'>";
	echo "<tr>";
	echo "<td width='2%' background='1.gif'></td>";
	echo "<td width='29%' valign='middle' align='center'>$mod[$p]</td>";
	echo "<td width='70%'><b>$row[model]</b><br>цена: $row[suma] лв.<br>е-маил: $row[mail]<br>от $row[grad]<br>контакти: $row[zakontakt]<br>ICQ: $row[icq]<br>$row[text]<br>публикувано на $row[datenew] г.</td>";
	echo "</tr>";
	echo "</table>";
	

}




// проверяваме таблицата колко редове има

$query = "SELECT COUNT(id) AS numrows FROM bor";
$result = mysql_query($query) or die('Error2, query failed');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];


$maxPage = ceil($numrows/$broinastranica);

$self = $_SERVER['PHP_SELF'];
$nomeranastranici = '';


for($page = 1; $page <= $maxPage; $page++)
{
if ($page == $pageNum)
{
$nomeranastranici .= " $page ";
}
else
{
$nomeranastranici .= " <a href=\"$self?search=$searchw&page=$page\">$page</a> ";
}
}



// създаване на ликовете [предишна] [следваща]
// както и линковете [първа] и [последна]


if ($pageNum > 1)
{
$page = $pageNum - 1;
$predishna = " <a href=\"$self?search=$searchw&page=$page\">предишна</a> ";

$parva = " <a href=\"$self?search=$searchw&page=1\">първа</a> ";
}
else
{
$predishna = ' ';
$parva = ' ';
}

if ($pageNum < $maxPage)
{
$page = $pageNum + 1;
$sledvashta = " <a href=\"$self?search=$searchw&page=$page\">следваща</a> ";

$posledna = " <a href=\"$self?search=$searchw&page=$maxPage\">последна</a>";
}
else
{
$sledvashta = ' ';
$posledna = ' ';
}

// показваме

echo $parva . $predishna . $nomeranastranici . $sledvashta . $posledna;






?>

</html>
така и не успях да направя $maxPage = броя на открития стриг
надявам се че тук някой ще ми помогне
 

Slavei

Registered
със mysql_num_rows(); си определяш броя резултати и ги делиш на броя резултати, които искаш да се появяват на една страница...
 

Горе