Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] sortowanie ze strony ustawiane
fredzio90
post 7.09.2007, 20:40:27
Post #1





Grupa: Zarejestrowani
Postów: 251
Pomógł: 0
Dołączył: 19.02.2007

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


witam, otóż chciałem dodać jakby panel gdzie wybieramy jak mają być sortowane dane.. a więc tak... tałek takie coś:
  1. <?php
  2. if($_GET[sortby]<>'') $sortuj = $_GET[sortuj]; else $sortuj = 'id ASC';
  3. $sortuj = str_replace('-', ' ', $sortuj);
  4. ?>


kilka linijek nizej, w tej samej funckji dodałem to do zapytania:
  1. ORDER BY $sortuj
a jako nawigacja takie coś:

  1. <?php
  2. echo '<center>sortuj według: <b>tytułu</b> <a title="alfabetycznie" href="projekty.php?cmd=skonczone&sortby=title-ASC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  3. href="projekty.php?cmd=skonczone&sortby=title-DESC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  4.  | <b>daty</b> <a title="najstarsze u góry" href="projekty.php?cmd=skonczone&sortby=aktualizacja-ASC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  5. href="projekty.php?cmd=skonczone&sortby=aktualizacja-DESC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  6.  | <b>popularności</b> <a title="najpopularniejsze u góry" href="projekty.php?cmd=skonczone&sortby=odslony-DESC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  7. href="projekty.php?cmd=skonczone&sortby=odslony-ASC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  8. ';
  9. ?>


plik projekty w nim jest ta funckja... i niesttewy przy pokazywaniu danych pojawia się błąd:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in

w lini:

z zapytaniem.... z tym order jest jakiś problem...
Go to the top of the page
+Quote Post
RaNdaLLHD
post 7.09.2007, 22:19:21
Post #2





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 21.06.2007

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


A masz to zmienną $sortuj w apostrofach albo cudzysłowach w tym zapytaniu? Być może to jest przyczyną Twojego błędu.


--------------------
. . .
Go to the top of the page
+Quote Post
Hazel
post 7.09.2007, 22:20:52
Post #3





Grupa: Zarejestrowani
Postów: 492
Pomógł: 33
Dołączył: 16.08.2007
Skąd: Wrocław

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


Weź wklej zapytanie, a nie nawigację...


--------------------
Go to the top of the page
+Quote Post
drPayton
post 7.09.2007, 22:32:06
Post #4





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


  1. <?php
  2. if($_GET[sortby]<>'') $sortuj = $_GET[sortuj](...)
  3. ?>

chyba powinno być:
  1. <?php
  2. if($_GET[sortby]<>'') $sortuj = $_GET[sortby]
  3. ?>

?
Go to the top of the page
+Quote Post
fredzio90
post 8.09.2007, 09:50:39
Post #5





Grupa: Zarejestrowani
Postów: 251
Pomógł: 0
Dołączył: 19.02.2007

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


no niestety poradziłem się waszych wskazówek i nic.. ciągle to samo... a teraz wygląda to tak:

  1. <?php
  2. echo '<hr size="1" noshade>';
  3. echo '<center>sortuj według: <b>tytułu</b> <a title="alfabetycznie" href="projekty.php?cmd=skonczone&sortby=title-ASC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  4. href="projekty.php?cmd=skonczone&sortby=title-DESC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  5.  | <b>daty</b> <a title="najstarsze u góry" href="projekty.php?cmd=skonczone&sortby=aktualizacja-ASC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  6. href="projekty.php?cmd=skonczone&sortby=aktualizacja-DESC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  7.  | <b>popularności</b> <a title="najpopularniejsze u góry" href="projekty.php?cmd=skonczone&sortby=odslony-DESC"><img src="images/s_down.gif" border="0" align="absmiddle"></a><a
  8. href="projekty.php?cmd=skonczone&sortby=odslony-ASC"><img src="images/s_up.gif" border="0" align="absmiddle"></a>
  9. ';
  10. echo '<hr size="1" noshade>';
  11. ?>


póżniej jest walidacja:

  1. <?php
  2. if($_GET[sortby]<>'') $sortuj = $_GET[sortby]; else $sortuj = 'id ASC';
  3. $sortuj = str_replace('-', ' ', $sortuj);
  4. ?>


a poniżej jest zapytanie:

  1. <?php
  2. $Query = mysql_query("SELECT * FROM $GLOBALS[project_tbl] WHERE priorytet='1' AND typ='ok' ORDER BY '$sortuj'");
  3. ?>



i prubuje wcisnąć według tytułu i nic..
Go to the top of the page
+Quote Post
phpion
post 8.09.2007, 09:56:44
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Wywal apostrofy w zapytaniu przy zmiennej $sortuj:
  1. <?php
  2. $Query = mysql_query("SELECT * FROM $GLOBALS[project_tbl] WHERE priorytet='1' AND typ='ok' ORDER BY $sortuj");
  3. ?>

Zresztą najlepiej samo zapytanie (jego treść) przypisz sobei do zmiennej, wyświetl zapytanie na ekranie, a dopiero potem wykonaj mysql_query(). Zobaczysz wtedy czy tworzy Ci się poprawne zapytanie.
Go to the top of the page
+Quote Post
fredzio90
post 8.09.2007, 10:18:33
Post #7





Grupa: Zarejestrowani
Postów: 251
Pomógł: 0
Dołączył: 19.02.2007

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


działa ;D te apostrofy dodałę po przeczytaniu tutaj posta, ze może go brakuje. ale już naprawiłem wszysko.. dziękuje bardzo ;D
Go to the top of the page
+Quote Post

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: 16.07.2025 - 00:37