Modern konyha
Vasárnapi különszámunkban egy izgalmas, új recepttel kedveskedünk Olvasóinknak, mivel ennyire rendesek vagyunk, illetve ezt a formátumot találtuk legjobbnak arra, hogy saját tudatlanságunkról kíméletesen lerántsuk a leplet. Nézzük hát, hogyan készíthető el a Rágott asztallap nevű finomság!
Hozzávalók 1 főre:
— egy UTF-8 kódolású adatbázis
— egy UTF-8 kódolású PHP-s függvénykönyvtár
— Notepad++ szövegszerkesztő
— egy közepes vastagságú asztallappal szerelt íróasztal
— mobilinternet
— hiányos ismeretek
A mobilinternetet tegyük félre, a két perc alatt megjelenő keresőtalálatok csak elvonnák figyelmünket az alkotó folyamatról. Közepes kedvvel lássunk hozzá a függvénykönyvtárat használó PHP programunkhoz. Rögtön az elején Notepad++-ban dinszteljünk meg egy session_start()
-ot, utána jöhetnek a header
utasítások, majd sorban hívogassuk a könyvtárunk függvényeit. Amikor elkezd illatozni, mentsük el az egészet UTF-8-ban és óvatosan kóstoljuk meg browserrel. Az ordas nagy hibaüzenetet (headers already sent
) olvassuk el figyelmesen, értsük meg, aztán győződjünk meg róla, hogy valóban nem írtunk ki semmit a képernyőre a session_start()
előtt. Finoman harapjunk rá az asztallap szélére.
Jusson eszünkbe, hogy korábban csináltunk már ilyet, vegyük elő a spájzból a kondért és nézzünk bele. Kóstoljuk meg, ízleni fog. A problémát továbbra se értsük, viszont harapjuk meg ismét az asztal szélét. Vegyük észre, hogy a régi és az új között csak a karakterkódolásban van eltérés, mentsük el az újat is máshogy, kóstoljuk meg, ízlik, finom. Asztallap, csak bátran, mindjárt kész!
Vegyük elő a mobilinternetet, magunkat takarékra téve ismerkedjünk meg az UTF-8 Byte Order Mark szerepével, az új kódot mentsük el BOM nélküli UTF-8-ban, kóstoljuk meg, ízlik, finom. Egy utolsó harapás az asztallapra és készen is vagyunk.
Jó étvágyat!
KTamas @
Oszinte reszvetem. Sajnos ez egyfajta _rite of passage_, ezen minden ferfinak at kell esnie, az elso nagyobb szopas a BOM es/vagy annak hianya miatt. Ez opcionalisan egybeesik az UTF8/16 kozotti kulonbsegek felfedezesevel, esetlegesen az UTF16 big-endian/little-endian osszekeveresevel.
KTamas @
Es kifelejtettem azt, hogy a windowsos Notepad csak BOM-mal tud menteni UTF8-at. Ha elotte leszedted, visszarakja.
SztupY @
Ha nem php-ba kéne jelenlegi helyünkön dolgozni annyit mondanék, hogy váltsá' valami értelmes nyelvre. Mivel php-ba kell dolgoznunk, ezért annyit mondok: váltsá' értelmes nyelvre, amivel php kódot generálsz majd.
S@ti @
Bár nem értek hozzá, de akkoris jól szórakoztam a bejegyzésen. Vagy nem ez volt a cél...? :-)
Nfol @
@KTamas: Az külön jólesik, hogy a BOM nélkül mentett UTF-8-as fájl később ANSI kódolásúnak mutatkozik.
@SztupY: Ezt muszáj PHP-ban írnon. Amennyire tetszett az elején, most annyira nemszeretem meló lett belőle.
@S@ti: Tárgyilagosan sokkal hamarabb és sokkal részletesebben le tudtam volna írni a bénázásomat, de én magam sem akartam újra átélni. Meg már éhes is lettem közben.
Zol @
Sati végre valaki rajtam kívül aki nem érti, hogy mit főztél, de valahogy érzi, hogy finom lett:)
Nfol @
@Zol: Most nem azért, de hajnali 4-kor? ;)