Is a simple guestbook for any site, just create 3 documents: addguestbook.php guestbook.txt index.php
Just chmod 777 guestbook.txt and enter the code in each file, enjoy :D
------ addguestbook.php code ------
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body,td,th {
font-size: 12px;
color: #000000;
}
a:link {
text-decoration: none;
color: #0066FF;
}
a:visited {
text-decoration: none;
color: #0066FF;
}
a:hover {
text-decoration: underline;
color: #0066FF;
}
a:active {
text-decoration: none;
}
body {
background-color: #CCCCCC;
SCROLLBAR-FACE-COLOR: #0066FF; MARGIN: 0px; SCROLLBAR-HIGHLIGHT-COLOR: #0066FF; SCROLLBAR-SHADOW-COLOR: #0066FF; SCROLLBAR-3DLIGHT-COLOR: #0066FF; SCROLLBAR-ARROW-COLOR: #51B0F2; SCROLLBAR-TRACK-COLOR: #51B0F2; Courier New; SCROLLBAR-DARKSHADOW-COLOR: #000000
}
-->
</style>
</HEAD>
<BODY>
<?php
$file = "guestbook.txt";
$name = $_POST['name'];
$email = $_POST['email'];
$site = $_POST['site'];
$msg = $_POST['msg'];
$site = stripslashes($site);
$msg = stripslashes($msg);
$email = stripslashes($email);
$name = stripslashes($name);
$msg = str_replace ("<","<",$msg);
$msg = str_replace ("\n","<br>",$msg);
$site = str_replace ("<","<",$site);
$site = str_replace ("\n","<br>",$site);
$email = str_replace ("<","<",$email);
$email = str_replace ("\n","<br>",$email);
$name = str_replace ("<","<",$name);
$name = str_replace ("\n","<br>",$name);
if(empty($email) || empty($name) || empty($msg)) {
echo "<h3>Sorry all fields are required</h3>";
} else {
$fp = fopen($file,"a");
fwrite($fp, '
<font size="3">
<BR><BR>
Name: '.$name.'<BR>
Email: <a href="mailto:'.$email.'">'.$email.'</a><BR>
Home Page: <a href="'.$site.'">'.$site.'</a><BR>Message: '.$msg.'<BR>
');
fclose($fp);
echo '<font size="3"><p align="center">Thank you '.$name.' for singing my guestbook</p></font>';
}
?>
<div align="center"></div>
<div align="center"></div>
<div align="center"></div>
<div align="center"></div>
<p align="center"><a href="YOU`R INDEX.PHP LINK HERE">Back to GuestBook</a></p>
<div align="center"></div>
</BODY>
</HTML>
---- finish -----
---- index.php code -----
<HTML>
<HEAD>
<style type="text/css">
<!--
.style1 {font-size: 12px}
body,td,th {
font-size: 14px;
}
a {
font-size: 12px;
}
body {
background-color: #CCCCCC;
SCROLLBAR-FACE-COLOR: #0066FF; MARGIN: 0px; SCROLLBAR-HIGHLIGHT-COLOR: #0066FF; SCROLLBAR-SHADOW-COLOR: #0066FF; SCROLLBAR-3DLIGHT-COLOR: #0066FF; SCROLLBAR-ARROW-COLOR: #51B0F2; SCROLLBAR-TRACK-COLOR: #51B0F2; Courier New; SCROLLBAR-DARKSHADOW-COLOR: #000000
}
a:link {
color: #0066FF;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #0066FF;
}
a:hover {
text-decoration: underline;
color: #0066FF;
}
a:active {
text-decoration: none;
}
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><BODY>
<form method="post" action="addguestbook.php">
<div align="center"></div>
<div align="center"></div>
<div align="center" class="style1"></div>
<div align="center"><span class="style1">Name:</span><br />
<input name="name" type="text" size="30" maxlength="40" />
<br />
<span class="style1"><br />
Email:</span><br />
<input name="email" type="text" size="30" maxlength="40" />
<br />
<br />
<span class="style1">Home Page:</span><br />
<input name="site" type="text" size="30" value="http://" maxlength="40" />
<br />
<br />
<span class="style1">Message:</span><br />
<textarea name="msg" cols="22" rows="6"></textarea>
<br />
<br />
<input type="reset" value="Reset" />
<input type="submit" value="Send" />
</div>
<div align="center">
<p> </p>
<?php
$file = "guestbook.txt";
if (fopen($file, "r")) {
$fil = "guestbook.txt";
$fo = fopen ($fil, "r");
$con = fread ($fo,filesize ($fil));
fclose ($fo);
echo "$con";
} else {
echo "<h3>Sorry there was an error please contact us now<h3>";
}
?></div>
</BODY>
</HTML>
---- finish -----
I too very much need the last entry on top. I've set this up as a beta. And will try to add some security. E-mail validation, and perhaps a captcha, to avoid spam. Also I think separate pages when messages exceed , say 20, is something we must have. But I'd like to stop right about there, to keep it simple. Help very much appreciated. Thanks a lot to you coders.
Check http://www.php.net/manual/en/function.fopen.php
$fp = fopen($file,"c");
might work.
But not for me yet. :(
Thank you '.$name.' for singing my guestbook
'; } ?>
on line 57 you have
change that to
and it should fix it! (I believe!)