Problem mit Kommentarfunktion!!!

bruderherz

Gesperrt
hallo,
(ja ich weiss wieder mal ich...)

also ich hab ein problem mit einer kommentar funktion die ich geschrieben habe.

also die index.php datei, in der alles includet wird sieht so aus(der include code, ist aber eher unwichtig):¨



PHP:
case 'home':
    include('home.php');
    break;
case 'kommentar':
    include('kommentar.php');
    break;
case 'comments':
    include('comments.php');
    break;
default: 
include('home.php');
break;


die kommentar.php datei sieht so aus und funktioniert nicht(der fehler wird in der letzten zeile angegeben (71) aber das kann doch nicht der fehler sein?!)::

PHP:
<table border="0" width="100%" height="100%">
<tr>
<td id="ueberschrift" width="100%" valign="top">
Kommentare
</td>
</tr>
<tr>
<td style="font-size: 11px;" valign="top">
lablablablblablabla<br><hr width="95%"><br>
<?php
if(file_exists("kommentare.txt")){
$txt2 = fopen("kommentare.txt", "r");
if($txt2)
{

$i=0;
while($text = fgets($datei, 500))
{
$text2[$i++]=$text;      
}
fclose($txt2);
}
$arrayanzahl = count($text2);
for ($o=$arrayanzahl; $o>=1; $o--)
{
echo $text2[$o-1];
}
}
else{
echo "<center><b>Keine Kommentare vorhanden.</b></center>";
}
?>
//HTML Code - Wegeditiert, da der Kram keine Rolle spielt

und das ist die comments.php datei, die auch nicht funktioniert(der fehler wird in der letzten zeile angegeben (30) aber das kann doch nicht der fehler sein?!):

PHP:
<?php
$kommentar = "<b>$name</b><br>$comment<p>";
$txt = fopen("kommentare.txt", "a");
if($txt)
{
fputs($txt, $kommentar);
fclose($txt);
echo "<center><b>Danke fuer Ihren Kommentar!</center></b>";
}
else
{
echo "<center><b>Datei konnte nicht geoeffnet werden.</b></center>";
}
$txt2 = fopen("kommentare.txt", "r");
if($txt2)
{

$i=0;
while($text = fgets($datei, 500))
{
$text2[$i++]=$text;      
}
fclose($txt2);
}
$arrayanzahl = count($text2);
for ($o=$arrayanzahl; $o>=1; $o--)
{
echo $text2[$o-1];
}
?>

hier sind die links zu den scripts:

Index.php
kommentare.php
comments.php

danke
Warum benutzt du nicht die PHP Tags? Caminus
weil ich die funktion noch nicht kannte^^
Es hat schon einen Grund, warum ich den HTML Code gelöscht habe
 
Zuletzt bearbeitet von einem Moderator:
Schau dir mal ganz genau das script an:

AUSSCHNITT:
PHP:
$txt2 = fopen("kommentare.txt", "r");
if($txt2)
{

-> Jetzt machst du ne klammer, die du gar nicht mehr schliesst!!
-> So muss es aussehen { .... }

mfg sl(A)ter
 

Entweder ich bin total verwirrt, oder du hast da etwas wirklich komisches im Code...
das //html nehme ich mal an soll ein kommentar sein, dann würde ich den schrieben bevor du das ?> Tag setzst... Daran wird das Script aber nicht scheitern...

Ich berufe mich da mal auf Slater der hat das schon korrekt erkannt... :)

Im kommentar.php fehlt eine "}" Klammer am Ende des Scripts...

Und im zweiten (comments.php) fehlt ebenfalls eine "}" Klammer... wo genau weiss ich nicht... ;)

antihero

//EDIT: sorry, war am schreiben als du eingetragen hast... :rolleyes:
 
Zuletzt bearbeitet von einem Moderator:
danke.
aber jetzt hab ich ein neues problem.
es wird zwar geschrieben in die datei, aber nicht gelesen.
und in der datei, von der gelesen und in der geschrieben wird, gibt es nur eine zeile! wie kann ich denn den neuen kommentar in eine neue zeile schreiben? also ich hab dafür immer fputs mit modi a benutzt, aber es wurde immer in die gleiche zeile geschrieben. gibt es denn überhaupt eine möglichkeit den neuen kommentar in eine neue zeile der .txt datei zu schreiben?
ach ja, die scripte oben hab ich verbessert, also die fehlenden } hinzugefügt.
 
ich hab die beiden dateien jetzt ein bisschen geändert, aber irgendwie geht es immer noch nicht. wieso?

hier die php datei, die den kommentar liest und ausgibt:

PHP:
<table border="0" width="100%" height="100%">
<tr>
<td id="ueberschrift" width="100%" valign="top">
Kommentare
</td>
</tr>
<tr>
<td style="font-size: 11px;" valign="top">
lablablablblablabla<br><hr width="95%"><br>
<?php
if(file_exists("kommentare.txt")){
$txt2 = fopen("kommentare.txt", "r");
if($txt2)
{

for($i = 0; $i < 100; $i++)
{
$newinhalt = array_reverse($inhalt);
$inf = explode("¦-¦",$newinhalt[$i]);


echo "$inf[0]";
echo "<br>"; 
echo "$inf[1]"; 
echo "\n";
}
}
}
else{
echo "Keine Kommentare vorhanden.";
}
?>
// hier steht immer noch belangloser HTML Code

und hier wird geschrieben:

PHP:
<?php
$name = trim($name);
$comment = trim($comment);
$kommentar = "$name¦-¦$comment";
$txt = fopen("kommentare.txt", "a+");
if($txt)
{
fputs($txt, $kommentar);
fclose($txt);
echo "Danke fuer Ihren Kommentar!";
}
else
{
echo "Datei konnte nicht geoeffnet werden.";
}
?>
 
Zuletzt bearbeitet von einem Moderator:
Zurück