Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Dzwonki szkolne
TomAsh18R
post 28.12.2006, 17:13:07
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.12.2006

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


Witam. Jest to mój pierwszy post, więc proszę o wyrozumiałość winksmiley.jpg
Mianowicie mam taki problem: Jestem dopiero początkującym w sprawach php i pracuję właśnie nad projektem strony szkolnej... Chodzi o to, że chciałbym aby w kolumnie były wypisane dzwonki szkolne, a w danej godzinie były one pogrubione (<b>8.00-8.45</b>).
Przykładowo: dana osoba wejdzie na stronę o 14.25, a lekcja zaczyna się o 14.00 i kończy o 14.45. Także rubryka "14.00-14.45" jest wytłuszczona.

Czy ktoś mógłby mi pomóc, bardzo proszę o pomoc w pracy tworzenia kodu...

Z góry dziękuję smile.gif
Go to the top of the page
+Quote Post
Denver
post 28.12.2006, 17:29:51
Post #2





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 24.09.2003
Skąd: Giżycko / Wrocław

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


Podejrzewam, że nikt za Ciebie gotowego skryptu nie napisze, bo po co? Forum jest od tego, aby Cię pokierować i czegoś nauczyć, a nie, żeby podać gotowe rozwiązanie.

Jeśli jeszcze nie potrafisz programować aplikacji w php, zainteresuj się albo artykułami w Sieci nt. współpracy php i bazy danych (np. MySQL), albo zainwestuj w jakąś książkę o tych technologiach (np. na helionie).

Jeśli natomiast podstawy już opanowałeś i nie możesz wpaść na rozwiązanie problemu z wytłuszczeniem aktualnej godziny, myślę, że powinieneś napisać zapytanie SQL, które wybierze wszystkie godziny lekcyjne późniejsze od obecnej godziny. Dodając sortowanie rosnące i LIMIT 1 na końcu zapytania otrzymasz czas zakończenia "obecnej" lekcji - potem, to już chyba z górki?


--------------------
Go to the top of the page
+Quote Post
Denver
post 28.12.2006, 20:58:14
Post #3





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 24.09.2003
Skąd: Giżycko / Wrocław

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


MySQL jest bazą darmową. Moja propozycja jest taka:

1. php.net,
2. dev.mysql.com.

I zajrzyj tu na forum z pytaniami za parę tygodni.


--------------------
Go to the top of the page
+Quote Post
matlas
post 28.12.2006, 21:38:57
Post #4





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 26.12.2006
Skąd: Wrocław

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


nie potrzebne do tego ci baza danych biggrin.gif pobierz godzinie: date("H:i") i odpowiednio switchem lub ifami pogrub odpowiedni przedzial godzin biggrin.gif


--------------------
Zapraszam na bloga: http://matlas.obsysa.net/
Go to the top of the page
+Quote Post
Denver
post 28.12.2006, 21:59:29
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 24.09.2003
Skąd: Giżycko / Wrocław

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


Czuję się zobowiązany do krótkiego wyjaśnienia: założyłem oczywiście, że baza się przyda, bo autor będzie na tyle kreatywny, że aplikację rozbuduje chociażby do jakiegoś zaawansowanego planu lekcji i przedstawiania zajęć, które się o danej godzinie odbywają winksmiley.jpg.


--------------------
Go to the top of the page
+Quote Post
DeyV
post 29.12.2006, 00:05:02
Post #6





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Najprostsze rozwiązanie.

1. Zapisujesz godziny lekcji w postaci liczb 0815 (godzina, minuta)
(musisz wiedzieć, co to jest tablica...)
w postaci
  1. <?php
  2. $aLekcje = array( 
  3.  0 => array( 0715, 0800 ),
  4.  1 => array( 0815, 0900 ),
  5. );
  6. ?>


2. Pobierasz aktualny czas, w ten samej postaci, czyli date( "Hi"); (tak jak napisał to matlas )
3. Pętlą (musisz wiedzieć, jak działa for lub while) sprawdzasz całą tablicę lekcji, przy pomocy IF w celu sprawdzenia, czy aktualna godzina jest mniejsza od godziny zakończenia i większa od godziny rozpoczęcia danej lekcji.
4. Wyświetlasz kolejne wiersze.


Denver - hahah


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
DeyV
post 29.12.2006, 18:09:17
Post #7





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Nie - zamiast takiego czegoś, tworzysz pętlę, która z tablicy $aLekcje wyświetla kolejne godziny.
Czyli np.

  1. <?php
  2. $iNow = date( "Hi" );
  3. foreach( $aLekcje as $aOne ) {
  4. if( $iNow >= $aOne[0] and $iNow < $aOne[1] ) {
  5.  echo '<b>'. $aOne[0] .' - '. $aOne[1] .'</b>';
  6. }
  7. else{
  8.  echo $aOne[0] .' - '. $aOne[1] ;
  9. }
  10. }
  11. ?>


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
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: 27.04.2024 - 21:32