Mit dem Begriff Tamplate kann ich leider nichts anfangen. Meinste du den Code?
Code gaestebuch.php
[code]
Gästebuch
Gästebuch
<?php
include_once('script/inc.php');
include_once('script/funktionen.php');
// Variablen auf 0 setzen
$nname = ‘’; $vname =’’; $ort = ‘’; $email = ‘’; $beitrag = ‘’;
$t_nname = ‘’; $t_ort = ‘’; $t_email = ‘’; $t_beitrag = ‘’;
// code erstellen, um zu verhindern, dass Spam erfolgt
$code = date(‘m’) * 3 + date(‘Y’) * 7 + 59 + date(‘d’) * 23 + 47;
if (isset($_POST[‘submit’])) {
// richtige Form prüfen -> die
if (strlen($_POST[‘nname’]) > 50 ) die (‘Manipulation’) ;
if (strlen($_POST[‘vname’]) > 50 ) die (‘Manipulation’) ;
if (strlen($_POST[‘ort’]) > 50 ) die (‘Manipulation’) ;
if (strlen($_POST[‘email’]) > 50 ) die (‘Manipulation’) ;
if (!isset($_POST[‘code’]) || $_POST[‘code’] != $code) die(‘Mailcode fehlt!’);
// Tags entfernen
$nname = strtr(trim(strip_tags($_POST[‘nname’])),’@/’,’ ‘);
$vname = strtr(trim(strip_tags($_POST[‘vname’])),’@/’,’ ‘);
$ort = strtr(trim(strip_tags($_POST[‘ort’])),’@\ ‘,’ ‘);
$email = trim(strip_tags($_POST[‘email’]));
$beitrag = strtr(trim(strip_tags($_POST[‘beitrag’])),’@/’,’ ');
// Lange Wörter (>50) zwangstrennen, um richtige Darstellung zu erhalten.
$beitrag = wordwrap($beitrag, 50, ’ ‘, 1);
// doppelte Leerstellen entfernen
$beitrag = str_replace(’ ', ’ ', $beitrag);
// pruefen ob alle Variablen richtig
if ( $nname == “” ) { $t_nname = “Bitte Nachname angeben!” ; }
if ( $nname == $vname ) { $t_nname = “Das kann nicht sein, Vor- und Nachname!” ; }
if ( $ort == “” ) { $t_ort = “Bitte Ort angeben!” ; }
if ( $email == “” ) { $t_email = “” ; }
else {
if(check_email($email)) { $t_email = “” ; }
else { $temail = “E-Mail nicht richtig!” ; }
}
if ( $beitrag == “” ) { $t_beitrag = “Bitte Beitrag schreiben!” ; }
// wenn i.O., Mails senden und eintragen in DB
if ( $t_nname == “” && $t_ort == “” && $t_beitrag == “” && $t_email == “” ) {
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From:bplaced <elsner.bplaced@freenet.de>\n";
$headers .= "Reply-To: elsner.bplaced@freenet.de\n";
$headers .= "X-Sender-IP:".$REMOTE_ADDR."\n";
$headers .= "X-Mailer:PHP/".phpversion();
$webmaster = "elsner.bplaced@freenet.de";
$betreff = "Gästebuch";
$kopf1 = "Folgender Eintrag erfolgte:\n\n";
$eintrag = "Nachname: ".$nname."\nVorname: ".$vname."\nOrt: ".$ort."\nEMail: ".$email."\n\n".$beitrag."\n";
$loeschlink = "\n\nLöschen: http://elsner.bplaced.net/scripte/gaestebuch_loe.php\n\n";
$text1 = $kopf1.$eintrag.$loeschlink;
@mail($webmaster,$betreff,$text1,$headers);
if ($email !=""){
$kopf2 = "Du hast in meinem Gästebuch folgenden Eintrag vorgenommen:\n\n";
$fuss2 = "\n\nVielen Dank für deinen Eintrag\nOliver Elsner\nelsner.bplaced.net";
$text2 = $kopf2.$eintrag.$fuss2;
@mail($email,$betreff,$text2,$headers);
}
// Eintraege an DB gaestebuch senden
$query = "INSERT into gaestebuch (vname,nname,ort,email,beitrag)
VALUES('$vname','$nname','$ort','$email','$beitrag')";
$result = mysql_query($query, $conn) or mysql_die();
// gegebenenfalls Scriptteil Newsletter
echo '
<p class="center"><strong>Erfolgreich eingefügt!</strong></p>
';
// Felder leeren
$nname = "" ; $vname = "" ; $ort = "" ; $email = "" ; $beitrag = "" ;
}
}
// submit abgeschlossen, es folgt die eigentliche Seite ---------------
echo ’
Nachname |
'.$t_nname.'
|
Vorname |
|
Ort |
'.$t_ort.'
|
E-Mail |
'.$t_email.'
|
Beitrag |
'.$beitrag.'
'.$t_beitrag.'
|
|
|
';
?>
Gästebucheintragungen
<?php
// Verbindung mit DB fuer Eintragungen anzeigen
$query = "SELECT *, DATE_FORMAT(tstamp,'%d.%m.%y') AS tstamp_f FROM gaestebuch ORDER BY tstamp DESC";
$result = mysql_query($query,$conn);
$num = mysql_num_rows($result);
for ($i = 0; $i < $num; $i++){
$row = mysql_fetch_array($result);
echo '
Name: |
'.$row['vname'].' '.$row['nname'].' |
Ort: |
'.$row['ort'].' |
Mail: |
'.$row['email'].' |
Date: |
'.$row['tstamp_f'].' |
'.nl2br($row['beitrag']).'
';
}
mysql_close($conn);
?>
</td>
[/code]
Tabellenstruktur:
[quote]CREATE TABLE gaestebuch
(
id_gaesteb
int(12) NOT NULL AUTO_INCREMENT,
vname
varchar(40) DEFAULT NULL,
nname
varchar(40) NOT NULL DEFAULT ‘’,
ort
varchar(40) DEFAULT NULL,
email
varchar(40) DEFAULT NULL,
beitrag
text NOT NULL,
tstamp
timestamp(14) NOT NULL,
PRIMARY KEY (id_gaesteb
)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
Daten für Tabelle gaestebuch
INSERT INTO gaestebuch
(id_gaesteb
, vname
, nname
, ort
, email
, beitrag
, tstamp
)
VALUES (1, ‘Testerli’, ‘Tester’, ‘Testdorf’, 'test@test.xy’, ‘Dies ist ein Testtext, der immer hier steht.\r\nEr dient nur zum Zeigen der Funktion.’, 20040924124140);[/quote]