Титла: PHP Календар - отделяне на дати Публикувано от: RedIce в Feb 05, 2009, 15:57 Опитвам се да си направя едно календарче… със задачки и т.т
За целта използвах скрипта от този сайт: http://www.phpjabbers.com/how-to-make-a-php-calendar-php26.html До тук ОК... само с COPY/PASTE и календара го имаше. Наложи се да направя малко промени в кода за да започва календарната седмица от Понеделник. Понеже PHP не ми е от най-силните страни се наложи накрая малко да налучквам но все пак се получи. Промяната разбира се първо трябваше да се направи в самата таблица (html кода) и след това в края скрипта, където получавам следният код: Код
До тук всичко е ОК. Сега проблемът ми е, че искам да мога да маркирам дадени календарни дни като събития. Измислих някаква схема но с нея мога да маркирам само един единствен ден от месеца по следният начин: Код
В този случай ще ми избере 2-рото число от месеца и благодарение на един CSS и промененият клас, ще го загради в квадратче. Разбира се трябва да отработя момента и със месеците и годините за да няма препокриване :) но мисля, че това няма да е толкова трудно. Но не можах да измисля нищо друго което да ми помогне да избера повече от една дата на месец. Някакви идеи? Титла: Re: PHP Календар - отделяне на дати Публикувано от: VladSun в Feb 05, 2009, 16:43 Скрипта, от който гледаш е ужасен и е написан аматьорски ;)
Никога не ползвай $_SERVER["PHP_SELF"] по този начин. Ето защо: Код: calendar.php/"<script>alert('XSS')</script>/?month=4&year=2009 Никога не ползвай $_REQUEST - не се знае, какъв CSRF ще отвориш. А и нищо не разбрах - какво точно искаш да направиш с тия "маркирания"? Титла: Re: PHP Календар - отделяне на дати Публикувано от: VladSun в Feb 05, 2009, 16:44 Нищо ли друго не си хареса:
http://www.google.com/search?client=opera&rls=bg&q=php+calendar&sourceid=opera&ie=utf-8&oe=utf-8 :) Титла: Re: PHP Календар - отделяне на дати Публикувано от: vm13 в Feb 05, 2009, 23:14 Вярно, че първо трябва да помислиш как да се справиш с пълните дати, но ето ти насока:
1. Направи си масив, съдържащ дните, които искаш да маркираш: $special_days = array(1, 5, 22); //първи, пети и 22 ден 2. Промени този ред: if ($countdays == 2){ на това: if(in_array($countdays, $special_days)){ Виж този PEAR пакет, може да ти бъде от полза: http://pear.php.net/package/Calendar Титла: Re: PHP Календар - отделяне на дати Публикувано от: RedIce в Feb 07, 2009, 12:09 vm13 мерси :) стана номера... горедоло съм измислил как да си оправя проблема с пълните дати, само остава да седна и да го направя.
Иначе ще поглемда и PEAR пакета после ;) VladSun - има много готови решения които... тепърва трябва да ги разгадавам как работят за да ги интегрирам в сайта.. мисля, че това ми е идеалният вариант. Това мислиш ли, че би ми спестило проблемите: htmlspecialchars($_SERVER['PHP_SELF']) ? Титла: Re: PHP Календар - отделяне на дати Публикувано от: VladSun в Feb 07, 2009, 12:44 VladSun - има много готови решения които... тепърва трябва да ги разгадавам как работят за да ги интегрирам в сайта.. мисля, че това ми е идеалният вариант. Най-добре изобщо не ползвай PHP_SELF - ако зададеш на HTML формата action='' това означава, че ще се извика текущия адрес - т.е. същата страница. Титла: Re: PHP Календар - отделяне на дати Публикувано от: RedIce в Feb 07, 2009, 13:39 а сега като се замисля... трябва ли ми въобще това :)
наистина ще стане и с action. Ако вместо $_SERVER["PHP_SELF"] , просто си задам пътят и самият PHP фаил :) например /path/to/file.php няма ли да ми реши пак проблема :)? Титла: Re: PHP Календар - отделяне на дати Публикувано от: VladSun в Feb 07, 2009, 17:23 а сега като се замисля... трябва ли ми въобще това :) Ако ще задаваш същия път, по-добре остави action-а празен - по-добра "преносимост" на скрипта ще имаш. |