Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Stronicowanie wyszukiwarki
hinczyk
post 8.12.2007, 21:59:18
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.12.2007

Ostrzeżenie: (0%)
-----


Witam!

Zrobiłem sobie "małą" wyszukiwarke i potrzebuje w razie występowania więcej niż 20 rekordów przejscie do następnej strony lub poprostu numerowanie.

Tak wygląda moja wyszukiwarka:
plik search.php
Kod
include("szukaj.php");
function print_main() {
global $page, $search_limit, $where, $word;
echo 'szukaj';
$ww[$where] = ' selected';
echo '
<div align="center">';
echo '<form method="post" action="search.php">
<input type="text" size="20" name="word" value="'.htmlspecialchars(stripslashes($_REQUEST['word'])).'">
<select style="width:150px;" name="where">
<option value="any" '.$ww['any'].'>Wszędzie</option>
<option value="any">------------------</option>
<option value="produkcja" '.$ww['produkcja'].'>Produkcja</option>
<option value="handel" '.$ww['handel'].'>Handel</option>
</select>
<input type="submit" style="font-weight: bold" value="szukaj!">
</form></div>';

show_result($search_limit, $page);
echo mysql_error();
}


oraz plik szukaj.php
Kod
function show_result($limit, $page) {

global $word, $where;

$word = $_POST['word'];

if($where=='') $where = 'any';
if($word=='') $where = 'halted';

if($where=='any') {
/*********** wyszukiwanie na stronie głownej ****************************/
$q = "SELECT * FROM main WHERE info LIKE '%$word%' ";
$r = mysql_query($q);
while($re = mysql_fetch_array($r)) {
$tekst = "<div style='font-size:12px;'><a style='color:#444;' href='index.php'><u><b>Strona główna</b></u></a>
".preg_replace( '/(' . preg_quote( $word ) . ')/i', '<font style="background-color:#FFFF7F;">$1</font>', substr($re['info'],0,125) )."...</div>
";
echo $tekst;
}
/************************************************************************/
$row_cnt1 = mysql_num_rows($r);
mysql_free_result($r);
}    
if($where=='any' OR $where=='produkcja') {
/*********** wyszukiwanie na stronie produkcji **************************/
$q = "SELECT * FROM produkcja WHERE (nazwa LIKE '%$word%' OR symbol LIKE '%$word%' OR info LIKE '%$word%')";
$r = mysql_query($q);
while($re = mysql_fetch_array($r)) {
$tekst = "<div style='font-size:12px;'><a style='color:#444;' href='produkcja.php?id=".$re['id']."'><u><b>".$re['nazwa']."</b></u></a>
".preg_replace( '/(' . preg_quote( $word ) . ')/i', '<font style="background-color:#FFFF7F;">$1</font>', $re['symbol'])."</div>
";
echo $tekst;
}
/************************************************************************/
$row_cnt2 = mysql_num_rows($r);
mysql_free_result($r);
}

if($where=='any' OR $where=='handel') {
/*********** wyszukiwanie na stronie handlu **************************/
$q = "SELECT * FROM handel WHERE (nazwa LIKE '%$word%' OR symbol LIKE '%$word%' OR info LIKE '%$word%')";
$r = mysql_query($q);
while($re = mysql_fetch_array($r)) {
$tekst = "<div style='font-size:12px;'><a style='color:#444;' href='handel.php?id=".$re['id']."'><u><b>".$re['nazwa']."</b></u></a>
".preg_replace( '/(' . preg_quote( $word ) . ')/i', '<font style="background-color:#FFFF7F;">$1</font>', $re['symbol'])."</div>
";
echo $tekst;
}
/************************************************************************/
$row_cnt3 = mysql_num_rows($r);
mysql_free_result($r);
}
$row_cnt = $row_cnt1 + $row_cnt2 + $row_cnt3;
/********************************************************/
echo '<div align="left" class="uni_01"><hr size="1" noshade>';
if ($where == 'halted'){
echo '<center>Wpisz słowo w wyszukiwarce...</center><hr size="1" noshade>';
}
elseif($row_cnt == 0){
echo '<center>Niestety nie znaleziono niczego co pasowałoby do podanego wyrazu...</center><hr size="1" noshade>';
}else{
echo '<center>szukano: <b>"'.stripslashes(htmlspecialchars($_REQUEST['word'])).'"</b> znaleziono stron: </center><hr size="1" noshade>';
}
}


Za podpowiedz (odpowiedz) z góry dzięki!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 06:57