Üzenõ tábla



Habár nem javascript - hanem PhP -, de mindenképpen egy hasznos kis okosság, úgyhogy itt a helye...
Notehát:

A script elején találhatóak a paraméterek, amik:
$own_name - a php fájlnak a neve, ha átnevezed a fájlt, ezt is módosítsd!!!
$maxlength - egy üzenet maximális hossza
$file - ebben a fájban fogja tárolni az üzeneteket a script
$anonyname - ilyen néven kerül be az, aki nem ad meg nevet
$anonymsg - ez lesz az üzenete annak, aki nem ir semmilyen üzenetet
$show - maximum ennyi üzenetet fog megjeleníteni. Ha "0", akkor mindet, amennyi van
$ip - az üzenõ ip címe.

A müködésrõl röviden:
A scriptet 3 függvény vezérli:
   (1) add_entry($username,$email,$message)
   (2) display_entries()
   (3) display_form()

Az (1) függvény arra hivatott szolgálni, hogy egy új sort adjon hozza az üzeneteket tároló fájlhoz. 3 bemeneti paraméterrel rendelkezik: $username, $email, $message.
A függvény elején kiszedjük a fordított pereket (\) a $username-bõl ill. a $message-bõl, valamint a $message-ben kicseréljük a ';' karaktereket ':' karakterre, mivel a ';'-t vezérlõkarakterként hasznája a kód.
A következõ lélpésben ha az $email nem üres, és nincs benne '@', valamint nem "http://"-vel kezdõdik, akkor ezt - mármint a "http://"-t - odacsapja az elejére.
Ha a $username nincs megadva (vagyis a változója üres), akkor az $anonyname változóban tárolt értéket fogja felvenni, ami jelen esetben Anonymous.
A következõ sorokaban a $message-vel csinaljuk meg ugyanezt; ha üres akkor a $anonymsg értékét veszi fel, ami jelen esetben "**".
Ezek után lekezeljük az $email-t, hogy kattintható legyen a majdan kilistázandó szövegben, annak megfelelõen, hogy az illetõ email címet adott-e meg, vagy URL-t, majd lekérjük az idõt, összeállíljuk a tárolandó sort, majd egy frappáns mozdulattal hozzáirjuk a fájl végére.
Ezzel ezt a függvényt ki is veséztük...

A (2) függvény csak simán kilistázza a fájlban tárolt összes adatot, ha a $show nem 0, hanem valamennyi, akkor a listázás csak annyi sorig fog terjedni. Ezen kívül még beállítja az IFRAME scrollbarjának a színét.

És végül a (3) függvény a FORM-ot készíti el. Ebben a részben van az oldal egyetlen JavaScriptes megoldása, miszerint a FORM "Üzenet" textboxjában minden egyes karakterleütésnél meghívódik a check() JavaScript függvény. Ez nem csinál semmi mást, mint lekéri a "message" id-u objektumot (ami pont az a FORM "Üzenet" textboxja), valamint a "counter" id-u objektumot (ami a FORM "Maradék hossz" textboxja), majd a "message" aktuális hosszát kivonja a $maxlength-ben tárolt értékbõl, és az eredményt beteszi az imént lekért "Maradék hossz" textboxba.

A kód legalján a vezérlõ utasítások találhatóak, ezek hivogatják a bemeneti paraméterek alapján a fentebb tárgyalt függvényeket.

Eredmény:
Kattints ide, majd a feljövõ ablakban láthatod az eredményt

Install:
A kódot másold ki egy külön fájlba, vagy az összetötörített változatot töltsd le innen.
Az üres adatbazisfájlban csak egy ENTER karakter legyen.
Ezeket a fájlokat egy olyan webserverre kell feltenned, ami engedélyezi php scriptek futtatását. Ilyen példának okáért a freeweb.hu is.
Még egy dologra kell figyelned, a jogosúltságok. Az ugye tiszta, hogy a php script és az adatbázisfájl a külvilág felé olvashatóaknak kell lenniük, DE az adatbázisfájlnak ezenkívül még írhatónak is kell lennie!!!

A forráskód:

uzeno.php
Másold a vágólapra



(c) /\\/\\@mo. 2004