2008. február 20., szerda

Keresés MySQL adatbázisban - ékezetek és html tag-ek, mint zavarótényezők..

Az alap probléma az, hogy a CMS részeként, a megrendelő adminisztrációs felületen, bármilyen tartalmat feltölthet, mivel már ott tart a webes technika ugye, hogy a laikusok kezébe adjuk a wysiwyg editort1, amivel mintha csak word-ben kalimpálna, klikkelgetős módszerrel formázhatja a szöveget, szúrhat be képet stb. stb...

Ezenkívül magyarok vagyunk, használunk sok szép ékezetet, amiket a MySQL még mindig nem tud túl jól megkülönböztetni. Ezen okokból kifolyólag, mikor az alap keresési módszert használnánk (SELECT content FROM table WHERE content LIKE '%valami%'), akkor számolnunk kell azzal, hogy a "tárogat" és a "tartalom" egyaránt meg fog jelenni, ha pl. a felhasználó arra keresett rá, hogy "tár".

Ez még mindig nem minden, hiszen a wysiwyg editornak köszönhetően, a content tele lesz html kóddal is, így aztán a találatok között lehet olyan content is, melyben nem szerepel ugyan valós tartalomként a "tár", sem pedig a "tar", de lehet, hogy egy link tartalmaz "target" definíciót is. Ez aztán végképp nem kell nekünk mint találat.

1 pl.: tinyMCE

2008. január 23., szerda

Beszédes URL-ek .htaccess, mod_rewrite azaz a rewrite engine ereje 1.

Nagyon sokan rá vannak kattanva az úgynevezett "beszédes URL"-ekre, amik kb. ilyenek:

http://blog.rhodeus.hu/2008/01/beszedes-url-ek-htaccess-modrewrite.html

Szimplán csak annyiról van szó, hogy a felhasználó által egyszerűbben megjegyezhető, mintha ugyanez ebben a formában lenne például:

http://blog.rhodeus.hu/?year=2008&month=01&day=14&entryID=28

De leginkább azért ajánlott, mert állítólag a google is jobban szereti, valamiért sokkal jobbak az indexelési statisztikák az előbbi URL-ekre, mint az utóbbiakra. Mindenesetre ebbe a részébe én most nem mennék bele, inkább lássuk, miből áll ez az egész.

2008. január 14., hétfő

PHP Session session.gc.maxlifetime helyes beállítása

Az alap probléma, amivel sok helyen találkozhatunk, nagyon sokan nem tudnak vele mit kezdeni az az, hogy szeretnénk, ha a felhasználóinknak akár egy órát is beállíthatnánk "inaktivitási időnek". Azaz, ha nincs aktivitás az oldalon, akkor ennek az időnek a lejártával, szűnjön meg a munkamenet, ergo a usernek újra be kelljen lépnie.

(Ez ugye inkább a fordított irányban szokott problémát okozni, vagyis az adminok panaszkodnak, hogy elmennek kávézni, cigizni és flörtölni a büfés csajjal, mire visszaérnek és befejezik a cikk megírását, és megnyomják a mentés gombot, kilépteti őket a rendszer, így elvesznek az addig beírt okosságok.)