[PHP] Prosty kalendarz w PHP |
[PHP] Prosty kalendarz w PHP |
22.05.2009, 12:38:50
Post
#1
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Chciałbym napisać prosty kalendarz w PHP. Chciałbym aby można było do niego dodawać informacje na temat każdego dnia. Proszę o poradę.
|
|
|
22.05.2009, 12:44:08
Post
#2
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 14 Dołączył: 11.10.2007 Ostrzeżenie: (0%) |
Napisz:
- jak chcesz, aby użytkownik wprowadzał/wybierał datę? - jak ma wyglądać podgląd kalendarza? - gdzie chcesz przechowywać dane (informacje) - baza danych, czy plik tekstowy? - jaki masz projekt wyglądu tej strony (elementy na stronie)? -------------------- SzamanGN
|
|
|
22.05.2009, 12:47:57
Post
#3
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Napisz: - jak chcesz, aby użytkownik wprowadzał/wybierał datę? - jak ma wyglądać podgląd kalendarza? - gdzie chcesz przechowywać dane (informacje) - baza danych, czy plik tekstowy? - jaki masz projekt wyglądu tej strony (elementy na stronie)? 1. Ręcznie - poprzez kliknięcie 2. np. po najechaniu wyświetla się wydarzenie lub po kliknięciu przechodzenie na nową stronę 3. Baza danych - MySQL 4. Kalendarz będzie umieszczony po prawej stronie. Ps: Dobrze by było żeby był umieszczony w jakiejś ramce(ozdobiony graficznie) |
|
|
22.05.2009, 12:52:49
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 335 Pomógł: 34 Dołączył: 9.11.2005 Skąd: Wrocław Ostrzeżenie: (10%) |
Hola hola... możemy Ci pomóc, no ale to Ty napiszesz, a nie My.
Zacznij od utworzenia sobie bazy. Nie chce mi się dokładnie myśleć, gdyż jestem na zajęciach i w między czasie Ci odpisuje. No ale powiedzmy, że kalendarz będzie generowany całkowicie w PHP, a dane przechowywane w bazie to tylko jakieś eventy czy cuś innego. A więc tak, sugeruje utworzenie tabelki w taki sposób: id || title || content || date Następnie musisz sobie napisać kalendarzyk, a więc tworzysz sobie tabelkę, w której generujesz cyferki w komórkach. Następnię napisz i powiedz nam co udało Ci się uzyskać, a pomożemy Ci złączyć baze z kalendarzem. P.S.: Uprzedam, że może to nie być optymalne rozwiązanie. Pisałem na szybko. -------------------- > > > Tworzenie stron < < <
|
|
|
22.05.2009, 12:57:21
Post
#5
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Hola hola... możemy Ci pomóc, no ale to Ty napiszesz, a nie My. Zacznij od utworzenia sobie bazy. Nie chce mi się dokładnie myśleć, gdyż jestem na zajęciach i w między czasie Ci odpisuje. No ale powiedzmy, że kalendarz będzie generowany całkowicie w PHP, a dane przechowywane w bazie to tylko jakieś eventy czy cuś innego. A więc tak, sugeruje utworzenie tabelki w taki sposób: id || title || content || date Następnie musisz sobie napisać kalendarzyk, a więc tworzysz sobie tabelkę, w której generujesz cyferki w komórkach. Następnię napisz i powiedz nam co udało Ci się uzyskać, a pomożemy Ci złączyć baze z kalendarzem. P.S.: Uprzedam, że może to nie być optymalne rozwiązanie. Pisałem na szybko. Czy ja napisałem że nie chce tego sam napisać? Sam to postaram się napisać. Tylko nie wiem kiedy będę miał czas. Ale w każdy bądź razie napisze tutaj kiedy to napisze. Macie jeszcze jakieś inne pomysły? |
|
|
22.05.2009, 12:59:20
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 335 Pomógł: 34 Dołączył: 9.11.2005 Skąd: Wrocław Ostrzeżenie: (10%) |
Nie chce mi się dalej myśleć. Pomyśl co należy zrobić. Musisz ziintegrować swoją bazę ze swoim kalendarzem. Do tego przyda Ci się jakieś jQuery czy mintAjax (nie wiem za bardzo które), co będzie odpowiedzialne za fajne wyświetlenie po najechaniu (ale na upartego da rade zrobić to w CSS).
-------------------- > > > Tworzenie stron < < <
|
|
|
22.05.2009, 13:16:23
Post
#7
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 17 Dołączył: 13.03.2006 Skąd: Jaworze Ostrzeżenie: (0%) |
prosze tu masz kalendarz
|
|
|
22.05.2009, 13:19:31
Post
#8
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 40 Dołączył: 20.08.2008 Ostrzeżenie: (0%) |
Może napisz z jakiej biblioteki korzystasz?
|
|
|
22.05.2009, 13:20:56
Post
#9
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 14 Dołączył: 11.10.2007 Ostrzeżenie: (0%) |
Gabrielx jak widzę sam sobie odpowiedziałeś jak zamierzasz zrobić skrypt.
Realizuj punkty według kolejności: 3, 4, 1 i 2, a osiągniesz sukces. -------------------- SzamanGN
|
|
|
22.05.2009, 19:49:54
Post
#10
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 17 Dołączył: 13.03.2006 Skąd: Jaworze Ostrzeżenie: (0%) |
wykozystalem przyklad z manuala PEAR
klasa potrzebna jest do pobrania tu: http://pear.php.net/package/Calendar/download |
|
|
15.06.2009, 16:50:46
Post
#11
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Znalazłem w internecie taki oto skrypt kalendarza:
Cytat <?php function dzien_tyg_nr($mies,$rok) { @$dzien = date("N", mktime(0,0,0,$mies,1,$rok)); return $dzien; } function dni_mies($mies,$rok) { $dni = 31; while (!checkdate($mies, $dni, $rok)) $dni--; return $dni; } //zmienne kalendarza @$m=date("m"); @$y=date("y"); @$aktualna=date("d-m-Y"); if($_GET['m']=='') {$miesiac=$m;} else {$miesiac=$_GET['m'];} if($_GET['y']=='') {$rok=$y;} else {$rok=$_GET['y'];} $nr_kratki=1; echo '<table border="1"><tr><td><b>Pn</b></td><td><b>Wt</b></td><td><b>Sr</b></td><td><b>Czw</b></td><td><b>Pt </b></td><td><b>So </b></td><td><b>N</b></td></tr>'; echo '<tr>'; for($i=1;$i<dzien_tyg_nr($miesiac,$rok);$i++) //ile pustych pol {echo '<td> </td>'; $nr_kratki++;} for($i=1;$i<dni_mies($miesiac,$rok) +1;$i++) //ile pelnych pol {echo '<td>'.$i.'</td>'; $nr_kratki++; if($nr_kratki%8=='0') {echo '</tr><tr>'; $nr_kratki='1';}} for($i=$nr_kratki;$i<8;$i++) //ile pustych pol {echo '<td> </td>';} echo '</tr></table><br/>'; echo $aktualna; ?> 1. W tym skrypcie wyświetlają mi się błędy takie jak: Cytat Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST' instead in C:\serwer\www\kalendarz2.php on line 23 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST' instead in C:\serwer\www\kalendarz2.php on line 23 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST' instead in C:\serwer\www\kalendarz2.php on line 23 Notice: Undefined index: m in C:\serwer\www\kalendarz2.php on line 23 Notice: Undefined index: y in C:\serwer\www\kalendarz2.php on line 23 Po zastosowaniu znaku @ część z nich się nie wyświetla, a 2 ostatnie się wyświetlają. 2. Czy można ten kalendarz ubrać w tą oto grafikę?: [img=http://img26.imageshack.us/img26/2825/kalendarzb.th.jpg] 3. Jak zrobić przegląd kalendarza na kolejne miesiące np. mamy maj a chce zobaczyć jakie ważne wydarzenie będzie w czerwcu lub w lipcu? 4. Jak zrobić wydarzenia na każdy dzień(na jeden dzień będzie przypadało jedno wydarzenie, nie więcej). 5. Pomożecie podłączyć jego do bazy MySQL? Nie podajcie mi kodu - chce sam spróbować to zrobić. Dajcie mi jedynie tylko wskazówki. Edit: To jak pomożecie? Ten post edytował Gabrielx 15.06.2009, 16:57:21 |
|
|
15.06.2009, 16:53:56
Post
#12
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
-------------------- ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
15.06.2009, 16:56:45
Post
#13
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Ok. Dzięki. A czy mógłbyś mi pomóc z tym oto skryptem?:
<a href="http://funkcje.net/view/2/2288/index.html" target="_blank">http://funkcje.net/view/2/2288/index.html</a> Udało mi się podłączyć do MySQL ale kiedy kliknę na dzień, wyświetla mi się:"The requested URL /5_3.php was not found on this server.". Jakie macie pomysły na poradzenie sobie z tym problemem? |
|
|
15.06.2009, 16:58:34
Post
#14
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
przekopiowany skrypt nie działa?
-------------------- ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
15.06.2009, 17:04:46
Post
#15
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Działa ale... czy można aby event był wyświetlany za pomocą bazy danych(bez tworzenia podstron, nie tak jak poniżej)? Bez tworzenia oddzielnie bazy dancyh ani oddzielnie podstrony.
Kod else if(in_array($aktual,$daty)) { //jesli data jest w tablicy kolorujemy i linkujemy dany dzien
$totalHtml .= '<td class="a"><div class="komA"><a href="5_3.php?data='.$aktual.'">'.$i.'</a></div></td>'; Ten post edytował Gabrielx 15.06.2009, 17:17:08 |
|
|
15.06.2009, 17:12:48
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) |
Tak
empty" title="Zobacz w manualu PHP" target="_manual , GET" title="Zobacz w manualu PHP" target="_manual , if" title="Zobacz w manualu PHP" target="_manual Ten post edytował Wicepsik 15.06.2009, 17:13:16 -------------------- |
|
|
15.06.2009, 17:42:39
Post
#17
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 9 Dołączył: 6.03.2009 Skąd: Katowice Ostrzeżenie: (0%) |
kiedys dawno temu napisałem taki skrypcik ;p troche prostacki, ale moze ci sie przydać :
kalendarz.php:
oraz wywołanie w index.php:
-------------------- www.quider.pl <- moja prywatna strona
Pomogłem? Kliknij Pomógł |
|
|
16.06.2009, 10:44:19
Post
#18
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
Quider - dzięki . Wicepski, za bardzo nie wiem jak to zrobić.
Kod: http://wklej.org/id/106996/ Może utworzyć plik(w tym przykładzie 5_3.php) a potem w tym pliku połączyć się z MySQL i wyświetlić rekord. Np. jeśli w kalendarzu kliknę na 13 czerwca który ma ID eventa 3 to wówczas kalendarz przekieruję mnie do pliku 5_3.php a ten wówczas połączy się z MySQL. Macie jakieś inne pomysły? |
|
|
16.06.2009, 10:50:20
Post
#19
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) |
Przeciez w tym pliku jest i wyświetlanie kalendarza i wyświetlanie poszczególnych dni.
Jak masz w tym pliku 5_3.php?data= to nazwij plik 5_3.php a jak masz np. nazwę kalendarz.php to zmien w kodzie wszystkie 5_3.php na kalendarz.php -------------------- |
|
|
16.06.2009, 10:56:43
Post
#20
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 2 Dołączył: 24.03.2009 Ostrzeżenie: (0%) |
|
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 21:49 |