JavaScript – sprawdzanie poprawności daty

No Comments

Będzie krótko i szybko. Problem jest trywialny – użytkownik ma podać datę. Nie ważne, w jaki sposób. Zakładamy, że nie chcemy/nie możemy (niepotrzebne skreślić) używać jakiegoś DatePickera. A nie możemy zostawić tego na głowie użytkownika, bo nawet, jeśli miałaby to być jego data urodzin, w 90% przypadków poda nieprawidłową :)
Read More…

Categories: JavaScript, Zabawy z kodem Tags: Tagi:,

GMail SMTP authentication bez PEAR (safe_mode On)

No Comments

Witam po krótkiej (huh…) przerwie. Niektórym może przydać się ten post, dlatego pojedziemy telegraficznym skrótem, bez szczególnego zagłębiania się detale.
Stanąłem ostatnio przed koniecznością wysyłania z poziomu PHP e-maili z uwierzytelnianiem SMTP, przez GMail. Pierwsza myśl – PEAR.
Bez problemu, utworzenie testowego skryptu, wysłanie maila – działa. Wrzucenie tego samego kodu do działającej aplikacji – nie działa. Dlaczego? Jak się okazało, nasza aplikacja musi pracować przy włączonym safe_mode, zaś PEAR przy wyłączonym :)
Read More…

Categories: PHP, Zabawy z kodem

Wykrywanie języka w JavaScript

No Comments

Witam po długiej przerwie. Dziś będzie ultrakrótko.
W naszej firmie kultywujemy staropolską tradycję rozdawania klientom prezentacji i katalogu produktów w formie strony (no, w sumie wielu stron w sensie plików) WWW, nagranej na CD. Jest to bardzo wygodne, gdyż pozwala na łatwe i szybkie uaktualnianie i nie wymaga instalowania dodatkowych narzędzi.
Nasz katalog na CD zawiera kilka wersji językowych. Domyślnie odpalany jest język polski, z możliwością zmiany w dowolnym momencie. Ale co zrobić, żeby nie drażnić niepolskojęzycznych klientów? Wykryć język przeglądarki na starcie.
Read More…

Categories: JavaScript, Zabawy z kodem Tags: Tagi:

PHP: bezogonkowo, czyli UTF-8 do plain-ASCII

2 Comments

Wrzucam to teraz, bo później mógłbym zapomnieć. Na grupie pl.comp.lang.php pojawiło się pytanie, jak zamienić polski tekst z polskimi ogonkami w standardzie UTF-8 na “zwykły” tekst, bez PLiterek.
Jak zwykle w takich przypadkach, pojawiła się odpowiedź, a ja, wzorem pracownika urzędu patentowego, palnąłem się w głowę, powtarzając “czemu ja tego nie napisałem wcześniej…”.
Read More…

Categories: PHP, Zabawy z kodem Tags: Tagi:,

Adobe Acrobat 3D, JavaScript i animacje. Część 1.

No Comments

No i stało się. Stanąłem przed koniecznością oprogramowania animacji modeli trójwymiarowych w Acrobacie 3D. Na szczęście chodziło “tylko” o opracowanie kodu, gdyż z grafiką 3D chwilowo jestem na bakier (czytaj: jedynym programem, który udało mi się choć trochę zrozumieć, byl Google SketchUp). Z Acrobatem 3D, siłą rzeczy – również.
Zagadnienie było proste: otrzymuję model utworzony w Adobe Acrobat 3D Toolkit (plik .u3d), zawierający kilka animacji. Animacje pokazują przejścia pomiędzy różnymi wersjami produktu. Klient zaś ma widzieć ciąg animacji, pokazujący przejście od aktualnie pokazywanego, do wybranego przez siebie wariantu. Skomplikowane? Jeszcze nie…
Read More…

Dynamiczne filtrowanie “tabeli”

5 Comments

Chyba za krótko zastanawiałem się nad tytułem tego posta… no cóż.
Stanąłem ostatnio przed koniecznością stworzenia tabeli produktów z filtrowaniem dynamicznym. Ładnie brzmi, prawda? A oto, co mam na myśli:
– każdy produkt posiada swoje “tagi”, według których wyróżnione są jego funkcje/wygląd/zastosowanie
– każdy produkt może mieć dowolną ilość tagów
– użytkownik może zaznaczyć, które produkty chce widzieć. Nie chcemy przy tym przeładowywać strony.
Read More…

Categories: JavaScript, jQuery, Zabawy z kodem Tags: Tagi:

Wielostanowy checkbox w jQuery

Witam. Dziś przy okazji pisania kolejnego rozszerzenia MediaWiki (więcej o tym już niedługo), natknąłem się na konieczność utworzenia 3-stanowego checkbox’a. Pomyślałem sobie: dlaczego ograniczać się do trzech stanów? Dlatego w tym wpisie przedstawię przepis na – ogólnie rzecz ujmując – checkbox wielostanowy.

W całości będzie nam pomagać jQuery.
Read More…

Obsługa archiwów ZIP w PHP. Część 2: Zapakować?

8 Comments

Po dłuższej przerwie powracamy do poruszonego wcześniej problemu obsługi plików ZIP w PHP. Z archiwizowaniem plików nie jest już tak wesoło, jak można by się spodziewać. Oficjalny manual wspomina o klasie ZipArchiwe. Niestety, w końcu możemy trafić na serwer, który nie spełnia wymagań koniecznych do jej obsługi. W takiej sytuacji należy… napisać własną obsługę pliku ZIP.
Read More…

Categories: PHP, Zabawy z kodem Tags: Tagi:, ,

Czyszczenie/usuwanie katalogu w PHP

4 Comments

Dzisiaj stanąłem przed koniecznością skasowania kilku katalogów i usunięcia zawartości kilku innych. Ponieważ uprawnienia do nich posiadał tylko serwer (użytkownik www, czy jakoś tak), musiałem to zrobić oczywiście z poziomu skryptu.
Doszedłszy do wniosku (po wielu bojach z Google), iż aby usunąć katalog, należy go najpierw opróżnić, w oparciu o kod znaleziony gdzieś w szuwarach Internetu, skonstruowałem własną funkcję, która może komuś się przyda
Read More…

Categories: PHP, Zabawy z kodem Tags: Tagi:,