PHP

Nowa Planeta PHP.pl

Posted in PHP, PHP.pl on Sierpień 30th, 2007 by Tomasz Cudok – 17 Comments

Właśnie uruchomiłem nową wersję serwisu Planeta PHP.pl. Całość została przepisana praktycznie od nowa, ostał się tylko specyficzny, wortalowy layout. Planeta działa teraz w oparciu o framework symfony, który umożliwił bardzo szybkie odtworzenie starej funkcjonalności i dodanie kilku nowości. Oto najważniejsze z nich:

  • Lepsza kontrola nad blogami, dzięki procesowi weryfikacji autora bloga.
  • Panel zarządzania dla autorów, gdzie mogą zmienić informacje o blogu, a także proponować nowe tagi. Panel jest zintegrowany z kontem na forum, więc nie ma potrzeby tworzenia nowej pary login-hasło. Co za tym idzie, wymagane jest posiadanie konta na Forum PHP.pl. No chyba, że ktoś ma już dodanego bloga, a nie potrzebuje dostępu do zarządzania.
  • Obsługa kanałów w formacie ATOM. Również kanał planety jest teraz w tym formacie.
  • Poprawki w layoucie, małe porządki w sidebarze.
  • Dodanie stron informacyjnych (Kontakt i O planecie)

Wątpliwości może budzić proces weryfikacji. Zdarzało się w przeszłości, że planeta agregowała blog osoby, która w ogóle o tym nie wiedziała i nie wyrażała na to zgody. Aby zapobiec takiej sytuacji, każdy nowo dodany blog musi zostać zweryfikowany. Zapożyczyliśmy wynalazek Google (przynajmniej tak mi się wydaje, choć nie wykluczam, że ktoś wymyślił to dużo wcześniej): aby mieć pewność, że osoba, która dodała blog jest jego autorem, musi ona wrzucić plik o podanej (losowo wygenerowanej) nazwie na serwer z blogiem. Planeta sprawdza, czy plik istnieje i jeśli tak jest, blog zostaje zweryfikowany. Potem jeszcze musi zostać zaakceptowany przez administratorów – powiadomienie o akceptacji (bądź też, w skrajnych przypadkach, odrzuceniu) bloga przychodzi na adres e-mail, wykorzystywany na Forum PHP.pl.

Osoby, które dodały blogi w starej wersji również muszą przejść proces weryfikacji, jeśli chcą mieć dostęp do zarządzania. Dla nich przygotowany został oddzielny formularz. Proces wygląda dokładnie tak samo, jak w przypadku nowo dodanych blogów. Oczywiście, nie jest on obowiązkowy, planeta będzie cały czas agregować treści z tych blogów.

Wszelkie sugestie jak zwykle mile widziane.

Wordpress + OpenID + Greasemonkey + PHP = …

Posted in OpenID, PHP, Programowanie on Luty 17th, 2007 by Tomasz Cudok – 24 Comments

Największą wadą OpenID w tej chwili jest fakt, że nawet mając już konto na serwerze tożsamości, nie bardzo jest do czego swój identyfikator wykorzystać. Z Wikitravel czy Mag.nolii raczej nie korzystam, a blogów, które umożliwiają dodawanie komentarzy z wykorzystaniem OpenID (zamiast standardowego Nick + E-mail) jest w tej chwili ledwie kilkanaście, jeśli weźmiemy pod uwagę blogi polskojęzyczne. Logowanie się za pomocą OpenID jest bardzo wygodne, gdy raz się tego spróbuje, wpisywanie swoich danych przy rejestracji/dodawaniu komentarza/postu/etc. przychodzi z dużym trudem. Dlatego, nie czekając aż OpenID upowszechni się mocniej, postanowiłem sam umożliwić sobie korzystanie z niego w większej ilości serwisów. read more »

Jak Cudi został piekarzem…

Posted in PHP, Programowanie on Luty 10th, 2006 by Tomasz Cudok – 7 Comments

Ostatnio, głównie ze względów finansowych, wróciłem do programowania w PHP. Pierwszą rzeczą jaką robi się po długiej przerwie w programowaniu w danym języku jest sprawdzenie, czy ktoś w międzyczasie nie znalazł sposobu by umilić kodowanie. I rzeczywiście, komuś udało się to zrobić.

Jakieś pół roku temu świat usłyszał o Ruby on Rails. Jest to framework do tworzenia aplikacji internetowych, napisany w języku Ruby. Najważniejszą jego cechą jest to, że nie trzeba się szczególnie wysilać, żeby stworzyć jedne z bardziej pracochłonnych elementów strony, jak np. formularze. RoR zachwycało prostotą, było to RAD w pełnym tego słowa znaczeniu, choć w podejściu zupełnie innym niż to znane z J2EE czy ASP.NET. Zamiast pracochłonnej obsługi zdarzeń i tworzenia ogromnych plików konfiguracyjnych w XML’u, RoR oferował jak największą automatyzacje zadań. Zamiast plików konfiguracyjnych są konwencje nazw plików, klas, metod i zmiennych. Niby ograniczanie swobody, ale przy okazji pozwala zachować porządek w kodzie.

O RoR można się jeszcze długo rozpisywać, ale ja miałem pisać o pieczeniu. Konkretniej, o pieczeniu ciasta. Mowa o frameworku CakePHP, który chyba najbardziej obrazuje to jak wyglądałby Rails gdyby był pisany w PHP. Chociaż PHP nie posiada tylu ‘magicznych’ kruczków składniowych co Ruby, w kilku względach jest od niego lepsze. Po pierwsze, jest powszechnie instalowane na serwerach. Z Ruby… bywa bardzo różnie. Po drugie, szkoda uczyć się, bądź co bądź skomplikowanego języka jakim jest Ruby, tylko po to by nie móc tego wykorzystać.

Muszę przyznać, że twórcom Cake’a bardzo dobrze udało się oddać RoRowy sposób pisania aplikacji. Piszę w nim średnio skomplikowanego CMSa i choć czasami widać w tym frameworku braki i błędy, to w niektórych miejscach pokazuje prawdziwą potęgę. Przykład, tworzenie panelu administracyjnego. Modele tworzą się praktycznie same, kontroler to kilka linijek kodu. Dzięki helperom w prosty sposób tworze sobie formularz, podpinam pod wszystko bibliotekę Prototype i w ciągu 30 minut mam panel zarządzania podstronami, oparty o AJAXa, z pięknymi efektami przejściowymi. Gdybym chciał to pisać bez Cake’a, zajęłoby to co najmniej 10 razy więcej czasu.

O CakePHP będę na pewno jeszcze nie raz tutaj pisał w miarę tworzenia kolejnych projektów. Już teraz udało mi się go mocno rozbudować o własne funkcje (komponenty, helpery, elementy itd.), a pracuje z nim dopiero od wczoraj. Zachęcam do testowania, można sobie stworzyć bardzo wygodną platformę do tworzenia aplikacji przy minimum wysiłku.