Komentarze są wyłączone
6 Lipiec 2009

jQuery+PHP sposób na krótką sesję…

Tworząc studioGallery napotkałem na pewien problem związany z zabezpieczeniem pliku, który zapisuje dane do bazy. Zakładając, że tradycyjna sesja w PHP trwa 180 sekund (3. minuty), a napisanie tekstu (artykułu) często może zająć więcej czasu, zacząłem szukać innego sposobu przekazania klucza, który byłby zgodny z tym, zapisanym w sesji.
Tradycyjna metoda polega na wstawieniu ukrytego pola formularza z wartością równą wygenerowanemu kluczowi, i zapisaniu do sesji takiej samej wartości.
W pliku docelowym sprawdzamy przekazany klucz z formularza z wartością sesji i jeśli są równe, wykonujemy dalszą część kodu. Jednak jeśli na stronie będziemy przebywać więcej, pisząc np. bardzo długi artykuł, sesja w PHP wygaśnie i nie będzie zgodna z wartością pola formularza.

Rozwiązanie tego problemu jest bajecznie proste. Wystarczy utworzyć jakiś plik PHP, którego zadaniem będzie wygenerowanie klucza, zapisanie go do sesji i wyświetlenie jego wartości.
Teraz z pomocą przychodzi jQuery.
Przed przesłaniem formularza do pliku, który zapisuje dane do bazy, metodą GET łączymy się z plikiem, pobieramy wartość klucza, podstawiamy do zmiennej i przesyłamy dalej formularz metodą POST.

W efekcie za każdym razem, kiedy będziemy przesyłali dane z formularza, skrypt wcześniej będzie pobierał aktualną wartość klucza, którą równocześnie zapisywać będzie do sesji, co będzie równoznaczne z tym, że klucz zawsze będzie taki sam, jak ten w sesji.

Przykładowy wygląd skryptu jQuery może mieć następującą postać:

$.get('plik_generujacy_klucz.php', function(sResopnse) {
	var key = sResponse;
	var dane_z_formularza = $('#nasz-formularz').serialize()+'&key='+key;
	$.post('plik_do_zapisu_danych.php', dane_z_formularza, function() {
	    // dalsza część kodu po przesłaniu danych...
	});
});

Oczywiście, zamiast przesyłać go metodą POST, można dodać go po adresie jako wartość GET.
Należy jednak pamiętać, że nie zwalnia nas to od przefiltrowania pól formularza i usunięcia ewentualnej niepotrzebnej treści. Nie zalecałbym tej metody w przypadku dodawania komentarzy, gdyż może to zwiększyć ilość spamu (choć wcale nie musi).

Sposób, który opisałem tyczy się raczej panelu administracyjnego i służyć ma jedynie użytkownikom, którzy potrzebują dużo czasu na dodanie treści na stronę, a w przypadku tradycyjnej metody przesyłania wartości KLUCZA, ograniczani byli 3.minutową żywotnością sesji.
Często bowiem spotykałem się z sytuacjami, że pisząc jakiś post, news, czy artykuł musiałem dość często stosować metodę ctrl+a, ctrl+c, ctrl+v, gdyż zdarzało się, że po przesłaniu formularza witał mnie tekst z informacją, że wykonałem niedozwoloną operację, bowiem mój klucz sesji wygasł i nie był zgodny z wartością przesyłaną przez formularz.

Opisałem zatem prosty sposób na rozwiązanie tego problemu.

Komentarze są wyłączone
4 Lipiec 2009

studioGallery już prawie było i…

studio GalleryJuż dwa tygodnie temu mogłem udostępnić galerię, jednak… zawsze coś stawało na przeszkodzie. Ostatecznie uznałem, że znakomitym rozwiązaniem może być możliwość dodawania w przyszłości różnego rodzaju wtyczek, tak, aby zwiększyć funkcjonalność i możliwości galerii. Stąd, między innymi, opóźnienie. Aktualnie istnieje już możliwość dodawania pluginów, i sam nawet wykonałem dwa – przyjazne adresy URL, oraz tagi, które można dodawać do zdjęć i do wpisów, a także wyszukiwać wpisy i zdjęcia po nich. Dodatek ten rysuje także chmurkę tagów, którą w razie potrzeby można wyłączyć. Podobnie jak i wykorzystywanie przez ten plugin przyjaznych adresów URL.

Widać zatem, że studioGallery zaczyna stawać się czymś więcej niż tylko małą galeryjką, jaką miało być z początku. Z czasem będzie z pewnością rozbudowywana o kolejne możliwości, dodatki i szablony. Na pierwszy ogień (już po wydaniu wersji 1.0.0) będzie przebudowa systemu zarządzania. Zmianie ulegnie nie tylko wygląd panelu administracyjnego, ale także  menu i ogólne zarządzanie stać się ma jeszcze bardziej intuicyjne i prostsze.

Póki co, galeria przechodzi fazę testów. Przebudowie ulegną także trzy szablony, jakie będą dostępne w wersji finalnej, gdyż w międzyczasie pojawiła się nawigacja w galerii i doszło kilka innych, większych bądź mniejszych poprawek w kodzie.

Bardo chciałem aby skrypt ten był dostępny na licencji GPL, i tak też się stanie!
Jednak ze względu na nieciekawą sytuację w jakiej aktualnie się znalazłem, zmuszony jestem galerię sprzedawać…
Biorąc również pod uwagę, fakt, że przesiadywałem nad nią nieprzerwanie ponad miesiąc po kilka, kilkanaście godzin, zarywając noce i dnie. Uważam, że ostateczna kwota, nie jest wygórowana i wynosi 89pln

Komentarze są wyłączone
2 Czerwiec 2009

studio Gallery na ukończeniu…

studio Gallery grassPrace nad galeryjką zbliżają się do końca. Czas na porządki w kodzie i z lekka przebudowanie zaplecza od strony administracyjnej. Jeszcze ze dwie skórki (zbliżone do siebie) popełnię i przez fazę testów ostrą przepuszczę, a jeśli wszystko dobrze pójdzie będzie można brać i korzystać… więcej »

Komentarze są wyłączone
27 Maj 2009

studio Gallery nabiera kształtów…

galeriaWcześniejszą galerię wykonałem w kilka dni, nad obecną siedzę już z tydzień i można powiedzieć, że dopiero zbliżam się do… półmetka. Sądziłem, że pójdzie mi z tym szybciej, jednak założenia okazały się bezpodstawne. Obecna galeria ze swoją poprzedniczką ma jednak coś wspólnego… człon Gallery w nazwie. więcej »

Komentarze są wyłączone
24 Maj 2009

krok do… tyłu…

Śląsk-LegiaPo ptakach…
Tak mógłbym skwitować to, co wydarzyło się w 29. kolejce spotkań naszej cudnej Ekstraklasy… Legia zamiast zrobić krok po tytuł, zrobiła go w tył i jest to naprawdę olbrzymi krok…
Odnoszę wrażenie, że odkąd Legią zaczął zarządzać iti (ajtiaj) jej reputacja znacznie podupada… Za poprzednich włodarzy, do klubu sprowadzano wyróżniających się graczy naszej ligi, a także uzdolnioną młodzież. Dzisiaj ściąga się mizernych grajków i… nastolatków, którzy pogrywają w klubikach a-klasy. więcej »

[ Strona 6 z 19 ] « Pierwsza...«45678»...Ostatnia »