Cikkek
Tűzfal készítése PHP segítségével

A leggondosabb tervezés mellett is maradhat sérülékeny kódrészlet a webalkalmazásokban. Ezt kihasználva rosszindulatú látogatók támadó kódokat helyezhetnek el a honlapokon, vagy egyszerűen teleszemetelik. Mindkettő komolyan csökkenti egy honlap és annak szolgáltatásainak értékét. Másrészt a sérülékenységeket kereső letöltések is terhelik a szervert. A rövid időn belül sok egymást követő próbálkozás akár elérhetetlenné is teheti a kiszemelt honlapot. Itt már nem elegendő a beérkező adatok hagyományos ellenőrzése, érdemes megfontolni az aktív védekezés lehetőségét is.
Sablonkezelés PHP-vel

Jelen cikkben a sablonnyelvekről, illetve a sablonkezelő rendszerek felépítéséről szeretnék leírást adni. Az utóbbi néhány hónapban sokat foglalkoztam egy saját sablonkezelő rendszer fejlesztésével, most pedig megpróbálom összefogni az így szerzett tapasztalataimat. Próbáltam nagyon az alapoktól elindulni – és hogy minél közérthetőbb legyen a dolog – egy már sokak számára jól ismert leíró nyelvet, az XML-t választottam a példákban bemutatott sablonnyelv alapjának.
Hierarchikus adatkezelés SQL-lel PHP-ben III.

A sorozat első részében megismerkedhettünk a hierarchikus listák kezelésének legegyszerűbb módjával. Az algoritmusok rekurzívak voltak, ebből következően csak kisebb méretű listák kezelésére voltak alkalmazhatók. A második részben az első módszernél hatékonyabb, robusztusabb, de egyben jóval bonyolultabb elméletet ismerhettünk meg. A módszerre az angol szakirodalom nested tree néven hivatkozik. A sorozat harmadik részében az előző rész elméletét követve egy általános, jól használható osztály kifejlesztése lesz a cél. Az osztály feltételezi a MySQL 5.1 vagy későbbi kiadású adatbázisszervert, továbbá a tranzakció kezelés végett az InnoDB adattábla típus javasolt.
A JavaScript metaprogramozása

Kedves olvasó! Az a célom e cikkel, hogy egy picit elkalandozzunk a mindennapok feladat orientált kódjától, és a JavaScriptet egy másik oldaláról nézzük meg. Hogy tűnődjünk egy kicsit a miérteken, az okokon, összeszedtem gondolatébresztőnek azokat a kérdéseket, melyekbe jómagam nap mint nap belebotlottam, és belebotlok még a mai napig is. Egy olyan összefoglalást próbálok adni, mely szétszórva megtalálható a weben, mégis így összegyűjtve talán nem sok helyen látjuk. Mivel nem szigorúan egy témáról van szó, és uncsi is sokat olvasni, csapongani fogunk ide-oda, és az is biztos, hogy bár egy ilyen cikk megírásakor az ember utánanéz dolgoknak, azért választ mindenre nem fogunk találni.
Megpróbáltam az egyszerűbb dolgokkal indulni, és a bonyolultabbak felé haladni. Ha használod a Firefox Firebug nevezetű hasznos kis kiegészítőjét, akkor bátran ollózd bele a példákat, és játszadozz velük. Legtöbbjük elméleti, bár igyekeztem pár életszerűbb esetet közéjük csempészni. Szintén elő fog tűnni pár jQuery által támogatott példa is, mely nem a reklám helye, de biztosan rajtam kívül is sokan használják még.
Megpróbáltam az egyszerűbb dolgokkal indulni, és a bonyolultabbak felé haladni. Ha használod a Firefox Firebug nevezetű hasznos kis kiegészítőjét, akkor bátran ollózd bele a példákat, és játszadozz velük. Legtöbbjük elméleti, bár igyekeztem pár életszerűbb esetet közéjük csempészni. Szintén elő fog tűnni pár jQuery által támogatott példa is, mely nem a reklám helye, de biztosan rajtam kívül is sokan használják még.
JRuby on Rails – Az erő legyen veled

Az első budapest.rb Meetupon Bácsi László tartott egy rövid, ám annál összeszedettebb prezentációt arról, hogy mi is az a Ruby. Megemlítette a különböző Ruby implementációk között a JRubyt is, amely szinte minden tekintetben felveszi a versenyt a többi megvalósítással és virtuális géppel (Ruby 1.8, YARV/Ruby 1.9, Ruby.NET, Rubinius). A következőkben a Ruby nyelv Java implementációját és a Rails keretrendszerben történő fejlesztés JRuby alapokra helyezését szeretném bemutatni egy igen egyszerű példán keresztül. Mivel a Rails amúgy is töretlen népszerűségnek örvend és rengeteg információ érhető el vele kapcsolatban, a keretrendszer általános bemutatásától eltekintek.
Szemantikus HTTP

Jelen írás egy a szerkesztői levelezőlistán indult vita továbbgondolása, mely a hitelesítés megkövetelésekor használandó HTTP fejlécek kérdésében bontakozott ki. A cikkben kitérünk ezekre és más, méltatlanul hanyagolt gyöngyszemekre is.
A Symfony keretrendszer telepítése és bemutatása

A keretrendszer, amivel már másfél éve dolgozom, gondoltam megér annyit, hogy írjak róla egy kis összefoglalót. Bár nincs túl jelentős fejlesztői előéletem, de kipróbáltam egy-két frameworköt. Ezenkívül a Symfony Project hónapról-hónapra növekszik, a közösség bővül, hetente újabb és újabb blogok foglalkoznak vele, egyre többen választják, vannak vele megelégedve, velem együtt.
PHP futtatása FastCGI módban

Sokszor felmerül webkiszolgálókat adminisztrálók körében a kérdés, hogy hogyan lehetne a PHP futtatását biztonságosabbá tenni. Bizonyára sokunk futtat, telepített már rendszert
mod_php-val (Apache), és sokan meg is tapasztaltuk ennek a hátrányait. Véleményem szerint ezeket a hátrányokat nagyon szépen meg lehet szüntetni, és lehet PHP-t futtatni biztonságosan, kompromisszumok nélkül.Objektumorientált JavaScript programozás a felszín fölött

Jelen cikkben a JavaScript objektumorientált programozásáról és szemléletéről szeretnék leírást adni. Bár már jelent meg Felhő tollából egy remek cikk a témában a Weblaboron, nem holmi véletlen folytán hasonlít a két cikk címe. De itt nem a JavaScript belső működése, hanem a programkód oldaláról szeretném megközelíteni a témát. A cikkben csak a JavaScript objektumorientált programozásával foglalkozhattam, mivel nem lehetett cél a JavaScript szintaktika tárgyalása, sem az objektumorientált programozáshoz tartozó fogalmak – objektum, osztály, metódus, öröklés stb. – magyarázata. Ennek ellenére, remélem, hogy mind a kezdők könnyűszerrel megértik a leírtakat, mind a gyakorlott programozók is hasznosnak fogják találni a cikket.
Karakterkódolási problémák kiküszöbölése

Gyakori és visszatérő probléma, hogy valakinek meggyűlik a baja egy oldal készítése során a karakterkódolás témakörével, pedig ha pár apróságot betartunk, akkor nem lesz vele gondunk. A nehézséget valószínűleg az okozza, hogy a helyes működéshez több tényező megfelelő összehangolása szükséges, és ha bármelyikük rossz, akkor csak annyit tapasztalunk, hogy "nem megy jól az oldal". Ez a cikk igazából csak egy válasznak indult, de már korábban is szerettem volna írni erről a témáról, mert fontosnak érzem, hogy tisztázzuk ezt a kérdést, ezért végül úgy döntöttem, hogy egy kicsit jobban körüljárom a témát.




