Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql/php] stronnicowanie - problem
bastek8989
post
Post #1





Grupa: Zarejestrowani
Postów: 205
Pomógł: 1
Dołączył: 11.09.2006

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


Witam

posiadam nast skrypt stronnicowania:

  1. <?php
  2. //zmien zapytanie - zostaw "count(*)" 
  3. $result=mysql_query("SELECT count(*) FROM ".$kat." "); 
  4. list($ilestron)=mysql_fetch_row($result); 
  5.  
  6. //co ile ma tworzyc strone 
  7. $skok=1; 
  8. if(!$_GET['current'])$_GET['current']=1; 
  9. //strona, ktora ma byc wywolana 
  10. $stronadoprzejscia='index.php?p=pokaz&k='.$_GET[k].'&zmienna=wartosc'; 
  11. //maksymalnie z jednej i drugiej strony biezacego (zobacz w praktyce, trudno to wytlumaczyc (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)  
  12. $max=3; 
  13. $temp=$_GET['current']/$skok; 
  14. $temp++; 
  15. $stron=$ilestron/$skok; 
  16. $all=(int)($stron); 
  17. if($all!=$stron)$all++; 
  18.  
  19. if(!$_GET['current']||($_GET['current']<=0))$_GET['current']=1; 
  20. if($_GET['current']>$all)$_GET['current']=1; 
  21. //zmien zapytanie - zostaw "LIMIT ".($_GET['current']-1)*$skok.", $skok" 
  22. $result=mysql_query("SELECT * FROM ".$kat." WHERE kategoria LIKE '%$kategoria%' AND publikacja LIKE 'tak' ORDER BY id DESC LIMIT ".($_GET['current']-1)*$skok.", $skok"); 
  23. $od=$_GET['current']-$max; 
  24. if($od<=0){$od=1;$do=2*$max+1;} 
  25. if(!$do)$do=$_GET['current']+$max; 
  26. if($do>$all){$do=$all;$od=$do-2*$max;if($od<=0)$od=1;} 
  27.  
  28.  
  29. $kropki=$od-$max-1;//$_GET['current']-(2*$max); 
  30. if($kropki<=0)$kropki=1; 
  31. if($od!=1)$stronicowanie.='<a href="'.$stronadoprzejscia.'&current=1">1</a> <a href="'.$stronadoprzejscia.'&current='.$kropki.'">...</a> '; 
  32. for($i=$od;$i<=$do;$i++){ 
  33. if($_GET['current']==$i)$stronicowanie.=' '.$i.' '; 
  34. else $stronicowanie.=' <a href="'.$stronadoprzejscia.'&current='.$i.'">'.$i.'</a> '; 
  35. } 
  36. $kropki=$do+$max+1;//$_GET['current']+(2*$max); 
  37. if($kropki>$all)$kropki=$all; 
  38. if($do!=$all)$stronicowanie.=' <a href="'.$stronadoprzejscia.'&current='.$kropki.'">...</A> <a href="'.$stronadoprzejscia.'&current='.$all.'">'.$all.'</a>'; 
  39. if($stronicowanie==' 1 ')$stronicowanie=''; 
  40.  
  41. if($ilestron)echo($stronicowanie.'<BR><BR>');
  42. ?>


wszystko dziala swietnie wyswietlaja sie strony 1 2 3 4 5

oto skrypt wyswietlajay probowalem wymyslec jak wygladalby limit ale niewyszlo bo niedziala :|
  1. <?php
  2. $sql = "SELECT * FROM ".$kat." WHERE kategoria LIKE '%$kategoria%' AND publikacja LIKE 'tak' ORDER BY id DESC LIMIT ".($_GET['current']-1)*$skok.", $skok";
  3. while($wynik=mysql_fetch_array($result))
  4.  
  5. {
  6. echo "'.$wynik[id].'";
  7. }
  8. ?>


jak bedzie wygladalo zapytanie do tego skryptu

pls pomocy :|

Ten post edytował bastek8989 21.10.2006, 10:40:10
Go to the top of the page
+Quote Post
gszesiek
post
Post #2





Grupa: Zarejestrowani
Postów: 152
Pomógł: 1
Dołączył: 17.09.2006

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


czy tego nie było wcześniej (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (widzałem coś takiego z odpowiedzią)

jak już piszesz, że nie działa to podaj dokładniejszy opis (np. błąd)

Kod
while ( $wynik = mysql_fetch_array( $sql ) ) {
    echo "$wynik['id']";
}

może tak będzie lepiej


podobny problem - ostatni post może Ci pomoże

ale bez limitu działa?
jeśli tak, to spróbuj zamiast tej funkcji wstawić zwykłe wartości

Ten post edytował gszesiek 21.10.2006, 11:33:54
Go to the top of the page
+Quote Post
bastek8989
post
Post #3





Grupa: Zarejestrowani
Postów: 205
Pomógł: 1
Dołączył: 11.09.2006

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


blad wyglada nastepujaca

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/bastek/public_html/widzimisie2/include/body/pokaz.php on line 6

niestety niepomoglo

  1. <?php
  2. $sql = "SELECT * FROM ".$kat." WHERE kategoria LIKE '%$kategoria%' AND publikacja LIKE 'tak' ORDER BY id DESC LIMIT ".($_GET['current']-1)*$skok.", $skok";
  3. ?>


oto ten felerny skrypt na limit :| cos tu jest zle ale niemam pojecia co

odnosnie tego podobnego problemu to laczy nas tylko to ze mamy blad w zapytaniu tyle ze tam niema nic napisane o limicie :|

Ten post edytował bastek8989 21.10.2006, 11:34:42
Go to the top of the page
+Quote Post
gszesiek
post
Post #4





Grupa: Zarejestrowani
Postów: 152
Pomógł: 1
Dołączył: 17.09.2006

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


Cytat
ale bez limitu działa?
jeśli tak, to spróbuj zamiast tej funkcji wstawić zwykłe wartości


no to miłej zabawy z php (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował gszesiek 21.10.2006, 11:53:34
Go to the top of the page
+Quote Post
bastek8989
post
Post #5





Grupa: Zarejestrowani
Postów: 205
Pomógł: 1
Dołączył: 11.09.2006

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


oniemoge (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) wszystko gra ;d jestem poczatkujacym i niewiedzialem ze kolejnosc skryptow jest wazna - wstawilem zapytanie pod funkcja i dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował bastek8989 21.10.2006, 11:49:09
Go to the top of the page
+Quote Post

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: 22.08.2025 - 14:55