eRIZ's weblog: archiwum:

PHP, webdesign, Linux, Windows i inne, bo nie samym chlebem człowiek żyje

PHP feat. MySQL: Sposób na drzewka

aktualizacja

W Sieci można natknąć się na wiele przepisów, w jakis sposób stworzyć drzewka zapisywane w DB. Niektóre mają więcej, niektóre mniej wad… Ale poszukiwałem jakiegoś w miarę uniwersalnego rozwiązania, które by najlepiej pasowało do moich potrzeb.

Założenia

Potrzebujemy drzewka kategorii. Ot, takie najprostsze, np:

  • kategoria
    • podkategoria1
    • podkategoria2
  • kategoria

więcej

SMF – kto jest online – boty i ulepszenia

O tym, jaką konkurencję dla komercyjnych forów stanowi skrypt SimpleMachines Forum wspominał nie będę, bo to temat na osobny artykuł. Dzisiaj opiszę, w jaki sposób można zaimplementować na swoim forum listę wyszukiwarek w polu „użytkownicy online”.

więcej

Zabezpieczanie skryptów/serwera

Pozwoliłem sobie rozpocząć pewien cykl nt. różnych problemów, na które mogą się natknąć użytkownicy Apache’a (i to niekoniecznie administratorzy). Tym razem skupię się na podstawowym zabezpieczaniu stron serwowanych przez Indianina.

Zwiększanie poziomu bezpieczeństwa stron można podzielić w zasadzie na kilka części. Wszak nie jest to tylko zadanie administratora naszego serwera, lecz również nasze, osób tworzących aplikacje „webowe”. Nie chodzi tylko o zapobieżenie destabilizacji działania serwisu, lecz również o ochronę danych naszych gości, co nakazuje nam ustawa o ochronie danych osobowych.

więcej

Żaby na „aby aby”, a rak – byle jak – współczesny programista?

Programowanie, programowanie, programowanie… OK, znajomość języka, to podstawa, algorytmy są właściwie najważniejsze. Kiedyś – assembler, kilkanaście KB (kilobajtów) dostępnej pamięci, bezpośredni dostęp do procesora. Dzisiaj – C#, C/C++, Delphi, GB pamięci trwałej i swobodnej. Same procki dużo szybsze od tych „pierwotnych”. Niby wszystko jest w porządku, ale czy do końca?

Jak się rozwinęła osoba programisty?

więcej

Tworzymy własny sidebar – „widżety” i :hover w IE

Jak zapewne zauważyliście, mój sidebar w końcu przeszedł pewną metamorfozę. Zgodnie z tym, co sobie obiecałem zmieniłem go, bo był „niedopracowany”. Teraz postanowiłem go „ułebodwazerować” i podzieliłem go na jakby widżety – są one raczej klasyczne. Dodatkowymi są: kalendarz, najnowsze wpisy, losowe wpisy. Co do samej postaci list z linkami – żeby nie straciły na zawartości i aby nie zajmowały tyle miejsca, to postanowiłem opisy pokazywać dopiero po wskazaniu myszą linka.

Teraz opiszę jak utworzyć każdy z takich widgetów u siebie.

Najpierw trochę teorii.

Wszystkie opisy, które pokazują się po wskazaniu myszą na link są oparte na pseudoklasie :hover. Wszystko by było OK, gdyby nie jeden problem: IE. Nie wiem, jak to jest w siódemce, ale we wszystkich pozostałych na użycie :hover bez jakichkolwiek hacków przeglądarka zezwala tylko dla elementu <a>. Nie ma sensu pchać osobnego skryptu tylko po to, aby pod IE się mógł opis pojawiać. Owszem, można by było wszystko wcisnąć link, ale specyfikacja XHTML nie zezwala na umieszczanie linków w linkach. Poza tym, inne obiekty niepotrzebnie by zmieniały wygląd. IE obsługuje technologię zwaną behaviours. Wykorzystał to autor whatever:hover, która pozwala na „normalne” używanie pseudoklas :hover czy :focus we wszystkich elementach. Ma tylko jedną wadę – nie możemy ich użyć w dynamicznie tworzonych obiektach (np. poprzez AJAX).

więcej

phpBB by Przemo – rozterki i alternatywy

Niby to zbieżność nazwy z moim imieniem (albo przezwiskiem w sekcji), ale ten wytwór nie jest mojego autorstwa. Dla niewtajemniczonych: jest to polska modyfikacja jednego z najpopularniejszych (o ile nie najpopularniejszego) „skryptu biuletynowego”, czyli tłumacząc z polskiego na nasze – forum dyskusyjnego, które można sobie postawić na własnym koncie www.

więcej

PHP4 vs. PHP5

Ostatnio mocno zastanawiam się nad przesiadką z PHP4 na PHP5. Vexerian wytrzyma; zrobiłem dzisiaj testy i pod obiema wersjami działa. Jest tylko jedno małe „ale”: piątka generuje mi dokumenty nawet 3 razy wolniej w stosunku do PHP 4. Fakt, wersja 5 ma dużo lepszą obiektówkę i kilka(dziesiąt) innych udoskonaleń, ale jestem w stanie z nich zrezygnować dla wydajności. Obecna wersja mojego engine’u sprawuje się pod PHP4 wyśmienicie, ale na polskim forum PHP sugerują, aby jak najszybciej migrować na piątą edycję. Moje API już jest jako tako zorganizowane, ale jeszcze nie jest za późno na przesiadkę. Rewolucji by nie było; kwestia zmiany kilku dosłownie funkcji.

Póki co, kontynuuję prace, pod PHP4.

Szufladka