also ich habe mich selbst noch mal an die arbeit gemacht. es funktioniert mit dem captcha, aber die einträge werden jetzt nicht gemacht. kann mir da noch einer helfen? ausprobieren könnt ihr das ganze unter: http://www.schmidt-meik.de/gaestebuch.php. da könnt ihr testeinträge machen um mich vielleicht zu unterstützen.
Hier der komplette seiten script ( ist vollständig ). Die anderen drei "Include_Dateien" die hier aufgeführt sind haben nichts mit dem gästebuch zu tun.
Hier die code datei
Hier der komplette seiten script ( ist vollständig ). Die anderen drei "Include_Dateien" die hier aufgeführt sind haben nichts mit dem gästebuch zu tun.
PHP-Code:
<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Gästebuch von Meik Schmidt</title>
<style type="text/css">
<!--
#gaestebuch {background:#CCC;}
-->
</style>
<?php include ("include/kopfzeile.inc.php"); ?>
<?php include ("include/navigation.inc.php");?>
»
<a href="gaestebuch.php" title="Gästebuch von Meik Schmidt">gästebuch</a></div>
<div class="inhalt">
<h1>Gästebuch von Meik Schmidt</h1>
<p>text von mir </p>
<form name="gastbuch" method="post" id="formular" action="<?php echo $_SERVER['PHP_SELF']?>">
<table width="520" border="0">
<tr>
<td width="110">Name:</td>
<td width="400"><input name="name" type="text" maxlength="50"></td></tr>
<tr>
<td align="left" valign="top">Eintrag:</td>
<td><textarea name="eintrag" cols="35" rows="10" maxlength="500"></textarea></td></tr>
<tr>
<td align="left" valign="top">Code:</td>
<td>
<div align="left">
<?PHP
$code = $_SESSION['new_code2'];
echo
'<img src="include/code.php?'.$code.'" height="25" width="100" style="border:0; padding:0;">
<INPUT TYPE="TEXT" NAME="new_code" SIZE="20" MAXLENGTH="6">';?>
</div></td></tr>
<tr>
<td align="left" valign="top">Absenden:</td>
<td><div align="left"><input name="absenden" type="submit" value="eintragen"></div></td>
</tr>
</table>
</form>
</div>
<div class="inhalt">
<?php
# echo " ".$_SESSION['new_code2']." <br>";
# echo " ".$_GET['new_code']." <br>";
if($_POST['new_code'] != $_SESSION['new_code2']) {
die("In moment funktioniert das mit dem code noch nicht - probiere es bitte ab dienstag noch einmal!");
}
// Dateipfad in der die Einträge abgespeichert werden
$datei = "gaestebuch.txt";
// sind der Name und Text eingetragen?
if (isset($_POST['name']) && $_POST['text'] != "" && $_POST['new_code'] !="") {
$name = $_POST['name'];
$text = $_POST['text'];
// Datei wird zum schreiben und lesen geöffnet
$zeiger = fopen($datei, "r+");
// alte Daten herauslesen und in $alt sichern
$alt = fread($zeiger, filesize($datei));
// HTML-Zeichen maskieren, Slashes entfernen, Zeilenumbrüche erhalten
$name = htmlspecialchars($name);
$name = stripslashes(nl2br($name));
$text = htmlspecialchars($text);
$text = stripslashes(nl2br($text));
$code = htmlspecialchars($name);
$code = stripslashes(nl2br($name));
// Eintrag "zusammensetzen"
$eintrag="<h2>$name</h2>\n$text\n";
// Cursor sringt zum Anfang
rewind($zeiger);
// neue Eintrag vor den alten Eintrag schreiben:
fputs($zeiger, "$eintrag \n $alt");
// Datei wieder schließen
fclose($zeiger);
}
// Anzeigen des Gaestebuch
readfile($datei);
?>
</div>
<?php include ("include/fusszeile.inc.php"); ?>
PHP-Code:
<?php
session_start();
$chars = "qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM1234567890";
$code = "";
for ($i=1; $i<7; $i++)
{
$code = $code.$chars[mt_rand (0,strlen($chars)-1)];
}
$_SESSION['new_code2'] = $code;
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Header("Content-type: image/jpeg");
$pic=ImageCreate(100,25); //(breite, höhe)
$col1=ImageColorAllocate($pic,255,255,255);
$col2=ImageColorAllocate($pic,138,138,138);
ImageFilledRectangle($pic, 0, 0, 100, 25, $col2);
ImageRectangle($pic, 1, 1, 98, 23, $col1);
for ($i = 0; $i < 6; $i++)
{
ImageString($pic, mt_rand(3, 5), (14*$i+10), mt_rand(3, 6), substr($code, $i, 1), $col1);
}
ImageJPEG($pic);
ImageDestroy($pic);
?>
Kommentar