English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés
Σ: 1 post

TCH  (statz) Főfasz
#1, Főfasz (10443)
3808 | #0f22 | ^ | Idézet | Wed, 24 Mar 2010 11:51:24 +01
188.36.*.* Unknown Unknown Hungary 188.36.*.*
Nesze, odaadom az én általános lapozómat.

function pager($search, $per_page, $current_page, $base_url, $pageparam, $next, $prev, $width) 
{ 
 $count = mysql_num_rows(mysql_query($search)); 
 $lastpage = floor($count / $per_page); 
 if (($count % $per_page) != 0) $lastpage++; 
 $page0 = ''<a href="'.$base_url.'&'.$pageparam.'='; 
 if (($current_page - 1) > 0) $result['prev'] = $page0.($current_page - 1).'">'.$prev.'</a>'; 
 else $result['prev'] = ''; 
 if (($current_page + 1) < ($lastpage + 1)) $result['next'] = $page0.($current_page + 1).'">'.$next.'</a>'; 
 else $result['next'] = ''; 
 $result['page'] = ''; 
 for($i = 1; $i < ($lastpage + 1); $i++) 
 { 
  if ($i != $current_page) $result['page'] .= $page0.$i.'">['.$i.']</a>'; 
  else $result['page'] .= '<b>['.$i.']</b>'; 
  if (($i % $width) == 0) $result['page'] .= '<br />'; 
 } 
 $result['query'] = $search.'LIMIT '.(($current_page - 1) * $per_page).', '.$per_page; 
 $result['data'] = mysql_query($search.' LIMIT '.(($current_page - 1) * $per_page).', '.$per_page); 
 return $result; 
}


Paraméterek:

- search: Ez az SQL kérés amit végre fog hajtani. Pl "SELECT * FROM termek WHERE termek_kat=15"

- per_page: Hány találat egy oldalon.

- current_page: Hanyadik oldalon járunk. Ez azt jelenti, hogy ha pl a 155. oldalon járunk, mint itt a vendégkönyvben, akkor abból nem csinál linket.

- base_url: Az az url, amihez majd hozzácsapja a szükséges paramétereket. Pl "http://webbolt.hu/search.php?termek_kat=15"

- pageparam: Az oldalszám paraméterének neve. Pl ha beírod, hogy "lap", akkor az előbb írt link így fog kinézni: "http://webbolt.hu/search.php?termek_kat=15&lap=" és utána az oldalszámok.

- next és prev: Ezek az előző/következő linkek szövegei. Pl "Előző lap" vagy "Következő oldal", akármi.

- width: Hány oldalt sorol fel egy sorban. Itt pl 24.

A végeredmény:

A visszakapott eredmény egy tömb, aminek öt eleme van.
A 'data', az a lefutott lap eredménye, egy mysql_result, lehet fetchelni.
A 'query', az meg a létrehozott kérés, aminek az eredménye a 'data' részben van. Csak azért van, hogy debuggolni lehessen a kérést, ha el van baszva valami. Vagy, ha hozzá akarsz csapni valamit még.
A 'page' az a lapozó maga, amit itt fent is látsz. Ki kell íratni echoval, vagy ahogy akarod.
A 'next' és a 'prev' az az előző és a következő lapok linkje. Ugyanaz vonatkozik rá, ami a 'page'-ra is. De nem muszáj kiiratni. Itt sincs.

Használat:

$eredmeny = pager(
	'SELECT * FROM termek WHERE (termek_kat='.$_GET["kat_id"].') AND (termek_nev LIKE "%'.$_GET["kereso"].'%")',
	15,
	0,
	'?search&kat_id='.$_GET["kat_id"].'&kereso='.$_GET["kereso"],
	'pg',
	'>>',
	'<<',
	16
); 
 
$lapozo = $eredmeny['page'].'<br />'.$eredmeny['prev'].' '.$eredmeny['next'].'<br />'; 
 
echo $lapozo; // felülre 
while ($row = mysql_fetch_array($eredmeny['data']) 
{ 
 echo 
  'Név: '.$row['termek_nev']. 
  'Ár: '.$row['termek_ar']; 
 // stb. 
} 
echo $lapozo; // alulra


Az $eredmeny['query']-ben egyébként ugyanaz lesz, mint amit a search paraméterbe beírtál, csak éppen hozzá lesz csapva a megfelelő LIMIT is.


English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés

Név: (max 255 byte)

Email: (max 255 byte) Nem kötelező!

Üzenet: (max 65536 kar.) 65536-0=65536




crap_vkn v4.34.0 by TCH
Thx to saxus for the escaped string decoder function (PHP), the realIP function (PHP) & the SQL handle layer (PHP), to thookerov for the int_divide function (PHP), to Jeff Anderson for the getSelText function (JS), to Alex King for the insertAtCursor function (JS), Flood3r for the new CSS styles, Pety for the spamprotection idea and some design and comfort ideas, MaxMind for the IP2Country database, famfamfam for the flags of countries and an unknown PHP programmer for the removeAccents function.



Kecskebaszók ide!