Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sortowanie pobranych informacji z bazy danych
Forum PHP.pl > Forum > Bazy danych > MySQL
PHPCrash
Mam pytanie!!! Jak można pobrane informacje z bazy danych wyświetlić posortowane na stronie WWW, wg godzin, a nie wg kolejności dodania ich do bazy danych. Przykład jest pod tym linkiem www.hitstacja.djs-music.info/ramka Jest to ramówka przedstawiająca każdy dzień tygodnia w miesiącu. Kwadrat z aktualnym dniem jest podświetlony (jaśniejszy kolor). Stworzyłem skrypt na stronę, który pobiera informacje z pól tabeli mssg (pola takie: title - Prezenter, text - Nazwa audycji, start_time - Gra od:, end_time - Gra do) Na stronie głównej ramówki w danym dniu informacje wyśiwtlają się zgodnie z godziną, bez względu na to którą z kolei będzie dodaną. Czyli np., Jeżeli dzisiaj dodałem najpierw audycje "Party", która trwa 19.00 - 20.00, a później dopiero audycje "Party 2", która trwa 15.00 - 16.00, w ramówce, której link podałem wyżej na pierwszej pozycji znajdzie się audycaj "Party 2", a dopiero na drugiej audycja "Party". Skrypt, który zrobiłem nie sortuje tych danych, na stronie wyswietla się najpierw audycja "Party" - 19.00-20.00, a później audycja "Party 2" - 15.00-16.00. Pozatym gdy do ramówki następnego dnia dodałem Audycje, wyświetliła się ona na stronie z moim skryptem razem z Audycjami z poprzedniego dnia. Jak napisać skrypt, który będzie sortował te dane wg Daty i godziny questionmark.gif?
SongoQ
ORDER BY pole [ASC, DESC
Grizzli
Dokładniej to tak np

TO jest porzadek rosnący od A do Z lub od najmiejszej liczby do najwiekszej
  1. SELECT nazwisko, adres
  2. FROM klienci ORDER BY nazwisko ASC;



a gdy zamiast "asc" wpiszesz "desc" będzie to porządek malejący czyli odwrotniość
PHPCrash
plik wyswietl.php
  1. <?
  2. include_once(&#092;"funkcje.php\");
  3.  
  4. echo &#092;"<center><h2>Ramówka HitStacji:</h2></center>\";
  5.  
  6. wyswietl_ramke(&#092;"select * from calendar_mssgs order by start_time asc\");
  7.  
  8. ?>


plik funkcje.php
  1. <?
  2.  
  3. function lacz_bd(){
  4.   $baza = @mysql_pconnect(&#092;"localhost\", \"user\", \"password\"); 
  5.   
  6.   if (!$baza){    
  7.     echo &#092;"Połączenie z bazą się nie powiodło.\";
  8.     return false;
  9.   }
  10.   if (!@mysql_select_db(&#092;"baza\")){
  11.     echo &#092;"Wybranie bazy danych nie powiodło się.\";
  12.     return false;
  13.   }
  14.   return $wynik;
  15. }
  16.  
  17. function wyswietl_ramke($zapytanie){
  18.  
  19.   lacz_bd();
  20.   $wynik=mysql_query($zapytanie);
  21.   if (!$wynik){
  22.     echo &#092;"Błąd. Połączenie nie powiodło się!\";
  23.     exit;
  24.   }
  25.   $znalezionych=mysql_num_rows($wynik);
  26.  
  27.   echo &#092;"<table border=0><tr bgcolor=lightgreen>\";
  28.   echo &#092;"<th>Prezentuje</td><th>Nazwa audycji</th>\";
  29.   echo &#092;"<th>Gra od:</th><th>Gra do:</th>\";
  30.   
  31.   for ($i=0; $i<$znalezionych; $i++){
  32.     $wiersz= mysql_fetch_array($wynik);
  33.     echo &#092;"<tr>\";
  34.     echo &#092;"<td>\".$wiersz[\"title\"].\"</td>\";
  35.     echo &#092;"<td>\".$wiersz[\"text\"].\"</td>\";
  36.     echo &#092;"<td>\".$wiersz[\"start_time\"].\"</td>\";
  37.     echo &#092;"<td>\".$wiersz[\"end_time\"].\"</td>\";
  38.     echo &#092;"</tr>\";
  39.   }
  40.   echo &#092;"</table>\";
  41. }
  42.  
  43. ?>



OK... Już działa:D exclamation.gif! Ale co teraz z sortowaniem wg Daty questionmark.gif?
SongoQ
ORDER BY pole1 ASC, pole2 ASC
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.