Ein kleines PHP Gästebuch
Vor ein paar Tagen habe ich dieses kleine Stück Software zusammen geschustert, und will es der Allgemeinheit nicht vorenthalten, auch wenn es schnell gecodet und relativ unordentlich ist. ;)
Das ganze besteht aus 3 Teilen: dem PHP Code selbst (die index.php), einer style.css Datei und einem MySQL Backend.
index.php
<?php
/*
Ein einfaches script ...
*/
$host="localhost";
$user="test";
$pwd="testpw";
$db="web1_test";
$table="test";
$conn = mysql_connect($host, $user, $pwd) or die("Die DB mag mich net ...");
mysql_select_db($db, $conn) or die("Keine Datenbank da ...");
if(isset($_POST['button'])&&$_POST['data']!==""&&strlen($_POST['data'])<"101"){
$query = mysql_query("INSERT INTO ".$table." (data, ip) VALUES ('".mysql_real_escape_string($_POST['data'])."', INET_ATON('".$_SERVER['REMOTE_ADDR']."'))") or die("Konnte den Eintrag nicht speichern");
}
$query = mysql_query("SELECT id, data FROM ".$table." ORDER BY id ASC") or die("Falsche Anfrage");
while($row = mysql_fetch_object($query)){
$data .= "<div class=\"row\">EintragNr.: ".htmlspecialchars($row->id)."-> Inhalt: ".htmlspecialchars($row->data)."</div><br>\n";
}
mysql_close();
?>
<!DOCTYPE html>
<html>
<head>
<title>PHP Gästebuch</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="content">
<h1>PHP Gästebuch</h1>
<?php echo $data."<br>"; ?>
<form method="post" action="index.php">
<input type="text" name="data" maxlength="100"> Maximal 100 Zeichen<br>
<input type="submit" name="button" value="Eintragen">
</form>
</div>
</body>
</html>
style.css
body {
background:#DDD;
color:#222;
font-family: helvetica,arial,sans-serif;
font-size: 1.1em;
}
.content {
margin: 0 auto;
width:100%;
max-width: 60em;
}
.row {
background:#CCC;
-webkit-border-radius: 7px;
-khtml-border-radius: 7px;
-moz-border-radius: 7px;
border-radius: 7px;
padding: 3px 10px;
}
input[type="text"]{
background-color: #EEE;
border: 1px solid #999;
}
input[type="submit"]{
background-color: #eee;
border: 1px solid #555;
}
Und der Query zum Erstellen der Datenbank:
CREATE TABLE IF NOT EXISTS `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`data` varchar(100) NOT NULL,
`ip` UNSIGNED INT(10) NOT NULL DEFAULT '0',
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
Dieser Code kann (und wird) Fehler enthalten, für eventuelle Schäden haftet der Ausführende Webmaster :D
Weitere Beiträge