Hallo! Ich bin noch Anfänger bzgl. php und habe die einfachste Form eines Gästebuchs (noch sehr unsauber) programmiert und benutze als Datenbank einfach nur eine Textdatei. Auf meinem localhost webserver rennt das Ding auch so wie ich möchte, aber auf meinem Webspace funktioniert es leider nicht so ,wie es soll. Es kann die alten Daten dort nicht aus der Textdatei extrahieren, gibt aber keine Fehler aus und schreibt daher einfach nur den neuen Eintrag in das .txt - file. Ein GB mit nur einem Eintrag ist natürlich etwas derbe
Helft mir bitte, bzgl. Berechtigungen auf dem Server habe ich schon alles 4fach gecheckt. Seltsam nur das der gleiche Code wie er bei mir lokal funktioniert auf meinem Webspace ein ganz anderes Ergebnis hervorbringt...
PHP-Code:
<?php
case "gbook":
{
//GBUCH ANFANG
if ($_GET['action'] == "add"){
$name = $_GET['name'];
$mail = $_GET['mail'];
$text = $_GET['text'];
if ($name == "" || $mail == "" || $text == "" ) {echo "<h1>Du hast nicht in alle Felder etwas eingetragen!
Bitte versuche es noch einmal !</a></h1>";
$name = "";
$mail = "";
$text = "";}
else
{
$zeit = getdate();
$zeitstring = $zeit['mday'] . "." . $zeit['mon'] . "." . $zeit['year'];
if (!$mail) $whostring = "<h1>". $name . " schrieb am " . $zeitstring . ":</h1>";
else $whostring = "<h1><a href=\"mailto:$mail\">$name</a>" . " schrieb am " . $zeitstring . ":</h1>";
$eintrag = "<h1>" . $text . "</h1>";
$eintrag = $whostring . $eintrag ."<hr style=\"border: dashed black 2px; margin-bottom:0px\">";
//alte Eintraege Lesen
if (file_exists ("content/gbdata.txt") ) {
$datei = fopen("content/gbdata.txt","r");
if ($datei)
{
while(!feof($datei))
{
$oldtext = fgets($datei);
}
fclose($datei);
}
}
//Eintrag schreiben
$eintrag = $eintrag . $oldtext;
$datei = fopen("content/gbdata.txt","w+");
fputs($datei,$eintrag);
fclose($datei);
echo "<h1>Danke für Deinen Eintrag in mein Gästebuch!
Vielleicht werde ich mich dafür einmal revanchieren ;)</h1>";
echo "<hr style=\"border: dashed black 2px; margin-bottom:0px\">";
include ("content/gbdata.txt");
}
}
else {
?> <h1>
[b]Bitte trag Dich ein![/b]
<DIV align="center">
<form action="mainpage.php?" method="get" enctype="text/plain">
<input type="hidden" name="section" value="gbook">
<input type="hidden" name="action" value="add">
Name: <input type="text" name="name" size="24">
Email: <input type="text" name="mail" size="24">
[b]Dein Eintrag:[b]
<textarea name="text" cols="40" rows="8"></textarea>
<input type="submit" value="Abschicken!">
</form>
</DIV>
[/b]
<?php }
echo "<hr style=\"border: dashed black 2px; margin-bottom:0px\">";
if (file_exists ("content/gbdata.txt") ) include ("content/gbdata.txt");
else echo "<h1>Noch keine Einträge!</h1>";
//GBUCH ENDE
}
?>