Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Gdzie jest błąd - proste sortowanie
kasek
post 16.12.2010, 23:40:03
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 9.11.2007

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


Witam

Napisałem poniższy kod , chodzi o sortowanie wyników z bazy danych , są dwa "GETY" old oraz newest , po kliknięciu jest sprawdzane co zostało kliknięte(old lub newest) i ustawiana jest odpowiednia sesja, w podstronie sortowanie odbywa się w zależności od tego co jest w sesji,i ustawiany jest również odpowiedni link , jeśli sesja jest OLD , link jest NEWEST i analogicznie jesli sesja jest NEWEST ustawiany jest link OLD tak żeby zmieniać sortowanie, jednak nie działa to do końca prawidłowo ponieważ muszę klikać po dwa razy zanim wyniki się zmienią, czasami po kliknięciu link się nie zmienia i jest ten sam, aż kliknę go drugi raz, a powinno być za każdym razem zmieniane... Patrzę w to już jakiś czas i nie wiem gdzie jest błąd, poniżej kod odpowiedzialny za sesje.

  1. if (isset($_GET['dsort']))
  2. {
  3.  
  4. if(isset($_SESSION['sort_data']))
  5. {
  6.  
  7. if ($_GET['dsort'] == 'old')
  8. {
  9.  
  10. if ($_SESSION['sort_data'] == 'DESC')
  11. {
  12. unset($_SESSION['sort_data']);
  13. $_SESSION['sort_data'] = 'ASC';
  14. $sort_data = $_SESSION['sort_data'];
  15. /* echo "SESJA: ASC"; */
  16.  
  17. }
  18. elseif ($_SESSION['sort_data'] == 'ASC')
  19. {
  20.  
  21. $sort_data = $_SESSION['sort_data'];
  22. /* echo "SESJA: ASC"; */
  23.  
  24. }
  25. }
  26.  
  27.  
  28. elseif ($_GET['dsort'] == 'newest')
  29. {
  30. if($_SESSION['sort_data'] == 'ASC')
  31. {
  32. unset($_SESSION['sort_data']);
  33. $_SESSION['sort_data'] = 'DESC';
  34. $sort_data = $_SESSION['sort_data'];
  35.  
  36. }
  37. elseif ($_SESSION['sort_data'] == 'DESC')
  38. {
  39.  
  40. $sort_data = $_SESSION['sort_data'];
  41.  
  42.  
  43. }
  44.  
  45. }
  46. }
  47. elseif(!isset($_SESSION['sort_data']))
  48.  
  49. {
  50. if ($_GET['dsort'] == 'old')
  51. {
  52.  
  53. $_SESSION['sort_data'] = 'ASC';
  54. $sort_data = $_SESSION['sort_data'];
  55.  
  56. }
  57.  
  58.  
  59. elseif ($_GET['dsort'] == 'newest')
  60. {
  61. $_SESSION['sort_data'] = 'DESC';
  62. $sort_data = $_SESSION['sort_data'];
  63.  
  64. }
  65. }
  66. }
  67.  
  68. elseif (!isset($_GET['dsort']))
  69. {
  70.  
  71. if (!isset($_SESSION['sort_data']))
  72. {
  73. $_SESSION['sort_data'] = 'DESC';
  74. $sort_data = 'DESC';
  75.  
  76. }
  77.  
  78. elseif (isset($_SESSION['sort_data']))
  79. {
  80. /* echo "brak get istnieje sesja".$_SESSION['sort_data'].""; */
  81. $sort_data = $_SESSION['sort_data'];
  82. }
  83. }
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: 24.06.2025 - 00:55