JS a cookies

W tej notce chciałem nieco napisać o obsłudze cookies w JavaScript. Zanim jednak zajmiemy się JavaScriptem, opiszemy jak sprawa wygląda w PHP.

PHP a ciasteczka

Wszystkie cookies wysłane przez przeglądarkę są w PHP udostępniane w tablicy $_COOKIE. Jeśli chcemy odczytać wartość cookie o nazwie cookie1 wystarczy kod:

echo $_COOKIE['cookie1'];

Czyli prosto i wygodnie.

Ciasteczka zapisujemy za pomocą funkcji setcookie:

int setcookie(string nazwa [, string wartość [, int data_ważności [, string ścieżka [, string domena [, int bezpieczne]]]]])

(wg. pl.php.net/setcookie)

Czytaj dalej...


Kategorie: JavaScript 26 lutego 2007, 19:54:00 6 komentarzy

Mono i nowy kompilator Visual Basica

Mono ProjectOd wczoraj po sieci krąży informacja, że projekt Mono doczekał się nowego kompilatora języka Visual Basic, który umożliwia skompilowanie programu na dowolnej platformie systemowej obsługiwanej przez Mono, bez konieczności wprowadzania poprawek do kodu, co było koniecznością w poprzednich wersji kompilatora.

Nowy kompilator, w stosunku do poprzedniej wersji uzupełnia brak prawie dwóch tysięcy metod, oraz eleminuje wiele różnych błędów.

Możliwość pisania programów, które uruchamiają się na wielu platformach, przez wiele lat była dla programistów niczym Święty Graal - powiedział powiedział Miguel de Icaza, załozyciel projektu Mono, pracownik firmy Novell. Ale to nie tylko jemu możemy podziękować za nowy kompilator. Duży wkład miał także norweski student mieszkający w Hiszpanii - Raulf Jarve, który został potem zatrudniony w firmie Novell. Do rozwoju kompilatora przyczyniła się także firma Mainsoft przy współpracy z Microsoftem.

Osobiście bardzo cieszy mnie fakt, że w końcu będzie można bez problemu pisać jeden kod pod wiele platform systemowych. Język Visual Basic jest obecnie jednym z najpopularniejszych języków programowania, dlatego nowy kompilator może przyczynić się do zwiększenia zainteresowania projektem Mono.

Nowy kompilator wspiera Visual Basic 8.0 i wchodzi w skład Mono 1.2.3.

Źródło: Linux Watch


Kategorie: Software 22 lutego 2007, 22:25:57 Dodaj komentarz

Wyręczanie użytkowników w wypełnianiu formularzy

Zwykle ograniczamy się tylko do walidowania poprawności danych wprowadzanych w formularze. A czy zastanawiałeś się kiedykolwiek, czy jesteś w stanie za użytkownika uzupełnić niektóre pola formularza? Nawet jeśli się zastanawiałeś, to rozmyślania pewnie zakończyły się stwierdzeniem, a skąd niby mam wyciągnąć dane użytkownika?! Niektórzy radzą sobie w ten sposób, że zapisują dane wpisane formularzach w ciasteczku i potem uzupełniają kolejne formularze tymi danymi. Jest to skuteczna metoda do czasu skasowania lub wygaśniecia ciasteczka. Tym wstępem chciałem zainteresować czytelników obiektem navigator.userProfile, który udostępnia nam AFAIK tylko Internet Explorer. Za jego pomocą możemy odczytać dane użytkownika z jego systemowej wizytówki vCard. Warunkiem powodzenia działania skryptu, który napiszemy będzie wcześniejsze utworzenie takiej wizytówki w systemie użytkownika.

Czytaj dalej...


Kategorie: JavaScript 18 lutego 2007, 10:30:44 1 komentarz

Zwijane panele w jQuery

Przez Riddle'a (a raczej dzięki niemu) zainteresowałem się nieco jQuery. Na początku podszedłem nieco scptycznie do "gotowca", bo wolę operować tylko swoim kodem, ale potem zapomniałem o uprzedzeniach i po prostu napisałem swój pierwszy skrypt.

Ogólny opis skryptu

Wyżej wymieniony skrypt możecie zobaczyć w akcji klikając na tym blogu po panelach "Archiwum", "Kategorie", itd. Zadaniem skryptu jest zwijanie i rozwijanie panelów i zapamiętywanie ustawien użytkownika w ciasteczku. Dla zainteresowanych skrypt ten udostępniam za darmo. Jedyne co wymagam to pozostawienie w nim notki autorskiej.

Obecnie skrypt wymaga odpowiedniej struktury, tutaj akurat korzystam ze znaczników <dt> i <dd>. Jak znajdę chwilkę czasu to przystosuje skrypt do różnych struktur dokumentu.

Instalacja na stronie i konfiguracja

Na początek pobieramy najnowsze wydanie jQuery i wstawiamy do strony. Następnie pobieramy plik skryptu i też wstawiamy go do strony, oczywiście za pomocą <script />. W pliku tym należy znaleźć linijkę

var tabs={archiwum:1,kategorie:1,meta:1,www:1}

Tutaj wpisujemy kolejne identyfikatory panelów (chodzi o element <dt>), do których chcemy przypisać skrypt. Wartość 1 oznacza, że panel będzie po starcie strony domyślnie widoczny, wartość 0, że panel będzie domyślnie ukryty. Wartości te są potem nadpisywane preferencjami użytkownika z ciasteczka. Skrypt później będzie szukał elementu <dd>, który jest spodziewany jako "brat" (selektor +). To wszystko odnośnie instalacji.

Kilka uwag

Jak już wspominałem, skrypt pisałem pod strukturę akurat tego bloga i w wolnym czasie go nieco zmodyfikuję, aby stał się bardziej uniwersalny.

Na stronie jQuery możemy znaleźć plugin $.cookie, ale na potrzeby tego skryptu napisałem własne funkcje $.cookie i $.setcookie. Uznałem łączenie zapisywania i odczytu cookie w jednej funkcji za niezbyt dobry pomysł (może się jeszcze przekonam ;-)). Funkcję $.setcookie będę jeszcze modyfikował, aby niemożliwe było zapisanie ciasteczka bez wartości (bo po co?) i dodam mozliwość dołączania pozostałych atrybutów ciasteczek (domain, secure, path).

W przyszłości zmianie ulegnie też funkcja $.toJSON, która będzie sprawdzać RegExem, czy wartość zapisana w Stringu jest poprawnym JSONem.

To tyle na temat skryptu. Życzę przyjemnego użytkowania i oczekiwania na nowe, poprawione wydanie ;-)


Kategorie: JavaScript 11 lutego 2007, 12:03:47 3 komentarze

Copyright © 2003-2009 Rafał Kukawski. Powered by Jogger | RSS Subskrybuj