Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Tutorial Gästebuch ? [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Tutorial Gästebuch ?


 
Jacky
28-02-2004, 10:07 
 
Bei mir functioniert das Script zum Gästebuch aus dem Tutorial nicht!
Es schreibt die Daten nicht in die Textdatei!

Datei eintragen.php

<?php
if ($action == "add"){

if ($name == "" || $mail == "" || $text == ""){
echo "<b>Du hast nicht alle Felder ausgef&uuml;llt !</b><br>";
echo "Klicke auf den Backbutton deines Browsers";
}
else
{

if ($www == ""){
$eintrag = "<a href=\"mailto:$mail\">$name</a><br>$text";
}
else{
$eintrag = "<a href=\"mailto:$mail\">$name</a>

<br><a href=\"$www\">$www</a>$text<hr><br><br>";
}

$datei = fopen("gaestebuch.txt","w+");
fputs($datei,$eintrag);
fclose($datei);
echo "Danke <i>$name</i> f&uuml;r deinen Eintrag";

}

}
else
{
?>
<font face="Verdana" size="1">
<b>Eintragen in mein G&auml;stebuch</b><br>
<form action="eintragen.php?action=add" method="get">
Dein Name: <input type="text" name="name" size="24"><br>
E-Mail: <input type="text" name="mail" size="24"><br>
Homepage: <input type="text" name="www" size="24"><br>
<br>
Dein Eintrag:<br>
<textarea name="text" cols="35" rows="5"></textarea><br><br>
<input type="submit"><br>
<b>Ihr Beitrag wird dann in k&uuml;rze Bereitgestellt!</b>
</form></font>
<?php
}
?>


Zeigen.php


<?php

include("gaestebuch.txt");

?>


Die Textdatei hat keinen Quelltext!

Danke schon mal im Vorraus!

 
Wurzel
28-02-2004, 10:50 
 
1. fehlermeldung?

2. ersetz vorsorglich mal alle werte die vom formular übergeben werden durch $_GET['DerNameDesWertes'] ... allerdings wäre $_POST und method=post imho eleganter

 
Jacky
29-02-2004, 13:51 
 
Es gibt keine Fehlermeldung!
Die übermittelten Daten stehen hinter der URL, aber
sie werden nicht in die Datei gaestebuch.txt geschrieben,
so gibt die Datei zeigen.php nur den Link zum Eintragen aus.

 
Wurzel
29-02-2004, 14:07 
 
Original geschrieben von Wurzel
2. ersetz vorsorglich mal alle werte die vom formular übergeben werden durch $_GET['DerNameDesWertes']

 
Jacky
02-03-2004, 16:07 
 
Hab ich gemacht. Das Script bringt jetzt
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\FoxServ\www\Test\eintragen.php on line 18

einfügen.php

<?php
if ($_Get['action'] == "add"){

if ($_GET['name'] == "" || $_GET['mail'] == "" || $_GET['text'] == ""){
echo "<b>Du hast nicht alle Felder ausgef&uuml;llt !</b><br>";
echo "Klicke auf den Backbutton deines Browsers";
}
else
{

if ($_GET['www'] == ""){
$eintrag = "<a href=\"mailto:$_GET['mail']\">$_GET['name']</a><br>$_GET['text']";
}
else{
$eintrag = "<a href=\"mailto:$_GET['mail']\">$_GET['name']</a>

<br><a href=\"$_GET['www']\">$_GET['www']</a>$_GET['text']<hr><br><br>";
}

$datei = fopen("gaestebuch.txt","w+");
fputs($datei,$eintrag);
fclose($datei);
echo "Danke <i>$_GET['name']</i> f&uuml;r deinen Eintrag";

}

}
else
{
?>
<font face="Verdana" size="1">
<b>Eintragen in mein G&auml;stebuch</b><br>
<form action="eintragen.php?action=add" method="get">
Dein Name: <input type="text" name="name" size="24"><br>
E-Mail: <input type="text" name="mail" size="24"><br>
Homepage: <input type="text" name="www" size="24"><br>
<br>
Dein Eintrag:<br>
<textarea name="text" cols="35" rows="5"></textarea><br><br>
<input type="submit"><br>
<b>Ihr Beitrag wird dann in k&uuml;rze Bereitgestellt!</b>
</form></font>
<?php
}
?>


und zeigen.php bringt

Warning: Failed opening 'gaestebuch.txt' for inclusion (include_path='.;c:\php4\pear') in C:\FoxServ\www\Test\zeigen.php on line 15
Der Code ist gleich geblieben.

 
Wurzel
02-03-2004, 16:19 
 
arrays im string ist böse:$eintrag = "<a href=\"mailto:$_GET['mail']\">$_GET['name']</a><br>$_GET['text']";
// ^^ nix gut

$eintrag = "<a href=\"mailto:".$_GET['mail']."\">".$_GET['name']."</a><br>".$_GET['text'];
//^^ besser

- liegt die gaestebuch.txt im selben ordner wie diese datei?
- wird diese datei in einer anderen included?

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:08 Uhr.