GuestBook V3.0

This Extension installs a new Object in the object palette, which represents a simple PHP guestbook where each entry is successively listed in place of this object.

Installation:

Further Instructions can be found in the ReadMe.txt.

Copyright:

(c)2002, Oliver Michalak / werk01.de

History:

V3.0:

V2.0:

V1.1:

V1.0:


Module Definition:

Scripts:

Icons:

Specs:

Interface:

/*URL*/"guestbook.html" /* FILE */, "SUBMIT" => "submitButtonName" /* SUBMIT */, "CHECK" => "name,text" /* CHECK */, "EMAIL" => "email" /* EMAIL */, "PREPEND" => "top" /* PREPEND */, "TIMESTAMP" => "Y-m-d H:i" /* TIMESTAMP */, "FORMAT" => "

{name} ({timestamp}):

{text}" /* FORMAT */, "FORMAT_EMAIL" => "

{name} ({timestamp}):

{text}" /* FORMAT_EMAIL */, "ERROR" => "Please check your input." /* ERROR */, "BLACKWORD" => "Viagra" /* BLACKWORD */); if (isset($_POST)) $gb_post = $_POST; else $gb_post = $HTTP_POST_VARS; if (isset($gb_post[$gb_data["SUBMIT"]])) { $valid = true; if (strlen($gb_data["CHECK"])) { $gb_chk = split (",", $gb_data["CHECK"]); foreach ($gb_chk as $gb_act) { if (!strlen($gb_post[$gb_act])) { $valid = false; break; } } } if (strlen($gb_data["BLACKWORD"])) { $gb_chk = split (",", $gb_data["BLACKWORD"]); foreach ($gb_chk as $gb_token) { foreach ($gb_post as $gb_act) { if (!(false === strpos (strtoupper($gb_act), strtoupper($gb_token)))) { $valid = false; break 2; } } } } if ($valid) { if (strlen($gb_post[$gb_data["EMAIL"]]) && preg_match ("/^[._a-zA-Z0-9-]{1,}@{1}[.a-zA-Z0-9-]{2,}.{1}[a-zA-Z]{2,5}$/", $gb_post[$gb_data["EMAIL"]])) $gb_message = str_replace ("{".$gb_data["EMAIL"]."}", $gb_post[$gb_data["EMAIL"]], $gb_data["FORMAT_EMAIL"]); else $gb_message = $gb_data["FORMAT"]; foreach ($gb_post as $key => $value) if ($key != $gb_data["SUBMIT"] && $key != $gb_data["EMAIL"]) $gb_message = str_replace ("{".$key."}", nl2br(htmlentities(stripslashes($value))), $gb_message); $gb_message = "\n".str_replace ("{timestamp}", date($gb_data["TIMESTAMP"]), $gb_message)."\n"; $gb_text = ""; if (file_exists ($gb_data["FILE"])) $gb_text = @implode ("", file($gb_data["FILE"])); if ($gb_data["PREPEND"]=="top") $gb_text = $gb_message.$gb_text; else $gb_text = $gb_text.$gb_message; $gb_fd = @fopen ($gb_data["FILE"], "w"); if ($gb_fd) { fwrite ($gb_fd, $gb_text); fclose ($gb_fd); } unset ($gb_message); unset($gb_text); } else echo $gb_data["ERROR"]; } if (file_exists ($gb_data["FILE"])) echo @implode ("", file ($gb_data["FILE"])); ?>