Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] wyszukiwarka a stronicowanie
pijanyadmin
post
Post #1





Grupa: Zarejestrowani
Postów: 128
Pomógł: 1
Dołączył: 24.10.2007

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


obecnie wyszukiwatrka wygląda tak i spełnia swoje zadanie bez problemu

  1. <?php
  2.  
  3. $szukaj=mysql_real_escape_string($_POST['szukaj']);
  4. $result = mysql_query('SELECT login FROM userdata WHERE szukaj = $szukaj');
  5. $sql= "SELECT * FROM userdata WHERE login LIKE '%$szukaj%'";
  6. $result2 = mysql_query($sql);
  7. $iles = mysql_num_rows($result2);
  8.  
  9. $res = mysql_query("SELECT * FROM userdata");
  10. $num_results = mysql_num_rows($res);
  11.  
  12. $end = gen_www();
  13. $run = $end - $start;
  14.  
  15. ?>
  16.  
  17. <h2>Wyniki wyszukiwania: </h2>
  18. <div class="profil">Znaleziono:<?php echo "<b>$iles</b>"; ?> z <?php echo "<b>$num_results</b>"; ?> <?php echo "Strona wygenerowana w " . substr($run, 0, 5) . " sek."; ?></div>
  19. <div class="profil1">widok: alfabetycznie | data rejestracji | ocena</div>
  20.  
  21. <?php
  22. while ($wiersz = mysql_fetch_array($result2)) 
  23. {
  24. echo '<div class="profil"><b>'.$wiersz['login'].' </b></div>';
  25. echo '<img height="32" width="25" src='.$wiersz[fotografia].' style="float:left; margin-right: 10px;" alt="" />';
  26. echo 'email: '.$wiersz[email].'';
  27. echo '<br /> opis: '.$wiersz[opis].'';
  28. }
  29.  
  30. ?>


jednak próbowałem zrobić stronicowanie przeglądając forum, tylko że... nie udało mi się do końca... minowicie jakie ma być zapytanie $sql które wyszuka w bazie wyraz zadany przez formularz? to znalazłem na forum

  1. <?php
  2. $sql = mysql_query('SELECT * FROM userdata');
  3. $ile = mysql_num_rows($sql); //ilosc wszystkich rekordow (nie stron !!)
  4. $na_strone = 5; //ilość rekordów max
  5. $stron = ceil ($ile / $na_strone); //stony w zaokrągleniu
  6. $szukaj=mysql_real_escape_string($_POST['szukaj']); //pobranie z formularza
  7.  
  8. for ($i = 1; $i < $stron; $i++) echo ' <a href="?strona='.($i+1).'">strona '.($i+1).'</a> ';
  9. if (!isset($_GET['strona'])) $strona = 1; else $strona = (int)$_GET['strona'];
  10.  
  11. $sql = mysql_query("SELECT * FROM userdata WHERE ".szukaj = $szukaj." LIMIT ".(($strona-1)*$na_strone).','.($strona*$na_strone)); // tak odczytujesz
  12. ?>


tylko jak to połączyć z
'
  1. <?php
  2. $szukaj=mysql_real_escape_string($_POST['szukaj']);
  3. $result = mysql_query('SELECT login FROM userdata WHERE szukaj = $szukaj');
  4. $sql= "SELECT * FROM userdata WHERE login LIKE '%$szukaj%'";
  5. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pijanyadmin
post
Post #2





Grupa: Zarejestrowani
Postów: 128
Pomógł: 1
Dołączył: 24.10.2007

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


pozmieniałem jaednak teraz nie działa w tym includowanie, czyli w ogóle wyświetlanie wyników wyszukania

  1. <?php
  2.  
  3. function pages ($first, $countpages, $nrpages, $zap) {
  4. if($countpages > $nrpages ){
  5. $countpages = $countpages/$nrpages; 
  6. $ile = ceil($countpages); 
  7. if ($first!=0) echo("<a href=\"".$_SERVER['PHP_SELF']."?id1=wynik&first=" . ($first-$nrpages) . "\" title=\"Poprzednie\">Poprzednie</a> "); 
  8. echo $countpages."<br>";
  9. for ($i=1;$i<=$ile;$i++) 
  10. { 
  11.  echo '<a href="' . $_SERVER['PHP_SELF'] . '?id1=wynik&first=' . rawurlencode( $_GET['szukaj'] ) . '?id1=wynik&first=' . ( $i * $nrpages - $nrpages ) . '">' . $i . '</a>';
  12. if ( $countpages > 6 ) {if ($first==($i*$nrpages-$nrpages)) 
  13.  { 
  14. echo ("<b>|" . $i . "|</b></a> "); $akt=$i-1; } else { print ("|" . $i . "|</a> "); 
  15.  } 
  16. } 
  17.  
  18. else {
  19. if ($first==($i*$nrpages-$nrpages)) 
  20.  { 
  21. echo ("<b>|" . $i . "|</b></a> "); $akt=$i; } else { print ("|" . $i . "|</a> ");  
  22.  } 
  23. }
  24. } 
  25. if ($akt<$ile) echo ("<a href=\"".$_SERVER['PHP_SELF']."?id1=wynik&first=" . ($first+$nrpages) . "\" title=\"Następne\">Następne</a>");
  26. }
  27. }
  28.  
  29. if (!isset($_GET['first'])) $first = 0; else $first = (int) $_GET['first']; 
  30. $nrpages = 3; 
  31. $szukaj=mysql_real_escape_string($_GET['szukaj']);
  32. $zap= "SELECT * FROM userdata WHERE login LIKE '%$szukaj%' LIMIT $first,$nrpages;";
  33. $countpages = mysql_num_rows(mysql_query("SELECT * FROM userdata WHERE login LIKE '%$szukaj%' "));
  34. $quer = mysql_query($zap);
  35.  
  36. ?>
  37.  
  38. <h2>Wyniki wyszukiwania: </h2>
  39. <?php echo pages($first, $countpages, $nrpages, $zap); ?>
  40. <div class="profil">Znaleziono:<?php echo "<b>$countpages</b>"; ?> z <?php echo "<b>$num_results</b>"; ?> <?php echo "Strona wygenerowana w " . substr($run, 0, 5) . " sek."; ?></div>
  41. <div class="profil1">widok: alfabetycznie | data rejestracji | ocena</div>
  42.  
  43. <?php
  44.  
  45. while ($wiersz = mysql_fetch_array($quer)) 
  46. {
  47. echo '<div class="profil"><b>'.$wiersz['login'].' </b></div>';
  48. echo '<img height="32" width="25" src='.$wiersz[fotografia].' style="float:left; margin-right: 10px;" alt="" />';
  49. echo 'email: '.$wiersz[email].'';
  50. echo '<br /> opis: '.$wiersz[opis].'';
  51.  
  52.  
  53. }
  54.  
  55. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 5.10.2025 - 16:46