Hallo,
Ich hab hier ein script von einem Gästebuch.
Das basiert auf einer TXT datei.
Mein Problem ist, dass da immer eine Leerzeile gemacht wird...
Und dann wird ein zweiter leerer Eintrag angezeigt.
Wieso das?
Hier ist das form in der gästebuch.php
----------
<html>
<head>
<title></title>
</head>
<body>
<hr>
<form action="neuerbeitrag.php" Method="post">
<p>Name:<br>
<input name="Name" size="40">
<br>
<br>
Inhalt:<br>
<textarea name="inhalt" cols="40" rows="12"
wrap="physical"></textarea>
</p>
<p><br>
<input type="submit" value="Absenden">
</p>
</form>
<p> </p>
<p>
<?
$beitrag = file("gaestebuch.txt");
krsort($beitrag);
foreach($beitrag as $ausgabe)
{
$ausgabe = stripslashes($ausgabe);
$zerlegen = explode("|", $ausgabe);
echo "
<table id="gb" align="center"
border="1" cellspacing="0"
cellpadding="5"
width="100%">
<tr>
<td>
Von $zerlegen[1] am $zerlegen[2]
</td>
</tr>
<tr>
<td>
$zerlegen[3]
</td>
</tr>
</table><br>
";
}
?>
</p>
<p>
<?
$beitrag = file("gaestebuch.txt");
?>
</p>
</body>
</html>
------------
Hier ist die neuerbeitrag.php:
------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><? include ("Title.php"); ?> Link</title>
</head>
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
<body>
<!-- start header -->
<!-- end header -->
<div id="banner"> </div>
<!-- start page -->
<div id="wrapper">
<div id="page">
<div class="bgtop">
<div class="bgbtm">
<!-- start content -->
<div id="content">
<div class="post">
<h1 class="title">Gästebuch!</h1>
<div class="entry">
<p>
<?php
$user = $_POST["Name"];
$user = htmlentities($user);
$inhalt = $_POST["inhalt"];
$inhalt = htmlentities($inhalt);
$inhalt = str_replace("\n", "<br>", $inhalt);
$email = $_POST["EMail"];
$email = htmlentities($email);
if ($inhalt == "" or $user == "")
{
echo "Sie müssen das Feld "Namen"
und "Inhalt" ausfüllen";
}
else
{
$datum= date("d.m.Y H:i:s");
$eintrag="$email|$user|$datum|$inhalt";
$datei = fopen("gaestebuch.txt", "a");
fwrite($datei, "\n".$eintrag);
fclose($datei);
echo "Ihr Eintrag wurde erfolgreich gespeichert";
}
?>
<a href="guest.html"><h3>Zurück zum Gästebuch</h3></a>
</div>
<p class="meta"> </p>
</div>
</div>
<!-- end content -->
<!-- start sidebar -->
<div id="sidebar">
<? include ("Navi.php"); ?>
</div>
<!-- end sidebar -->
<div style="clear:both"> </div>
</div>
</div>
</div>
</div>
<div id="footer">
<p>©2008 Faint • Content by Users and <a href="http://www.subrosabrand.com/">SubrosaBrand</a>.</p>
</div>
</body>
</html>
---------------
und hier der Inhalt der gästebuch.txt mit einem Eintrag:
---------------
|Faint|31.05.2008 23:23:07|Test...Test...Test...Test...Test...Test...Test
---------------
Und genau die Leerzeile über dem eigentlichen eintrag in der TXT stört mich, da diese als zusätzlicher eintrag ohne angaben erkannt wird.
Wie bekomm ich die weg?