Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

moinsen,

ich habe folgendes problem und verzweifle gleich.

ich möchte falls eine datei existiert, etwas anhängen, falls sie nicht existiert, dann soll sie erstellt werden (klappt auch) und etwas in eine andere datei zusätzlich angehängt werden.

...das mache ich bis hier so:

...
$check_engine_topic_file = "blabla.dat"
if (file_exists($check_engine_topic_file))

{
$engine_topic_file = fopen("$check_engine_topic_file","a");
chmod ("$check_engine_topic_file", 0777);
fputs ($engine_topic_file, "$engine_topic_content");
fclose($engine_topic_file);
}
else
$engine_topic_file = fopen("$check_engine_topic_file","a");
chmod ("$check_engine_topic_file", 0777);
fputs ($engine_topic_file, "$engine_topic_new_content_file");
fclose($engine_topic_file);
$enginefile_read = fopen("file2.dat","a");
$content_index = "<li><a href=$labor-$topic_id.html>$topic_data[title]</a></li>";
fwrite($enginefile_read, "$content_index" );
fclose($enginefile_read);

...
[/PHP]

... nur macht das skript nicht was ich oben beschrieben habe, sondern macht immer dass, was nach else kommt, auch wenn die datei existiert. beim ersten zugriff auf die datei wird dann natürlich selbige erstellt, klappt ja wie gesagt, aber beim zweiten zugriff kommt dann noch zusätzlich die fehlermeldung:

Warning: fputs(): 39 is not a valid File-Handle resource in ...blabla apache..../reply.php on line 191

Warning: fclose(): 39 is not a valid File-Handle resource in ..bla bla../reply.php on line 192

:dontknow: was mach ich denn verdammt nochmal falsch?

(parse error machen verdammt schlechte laune wenn sie nicht verschwinden)

Geschrieben
Original geschrieben von Tiny Boom

moinsen,

ich habe folgendes problem und verzweifle gleich.

ich möchte falls eine datei existiert, etwas anhängen, falls sie nicht existiert, dann soll sie erstellt werden (klappt auch) und etwas in eine andere datei zusätzlich angehängt werden.

...das mache ich bis hier so:

... nur macht das skript nicht was ich oben beschrieben habe, sondern macht immer dass, was nach else kommt, auch wenn die datei existiert. beim ersten zugriff auf die datei wird dann natürlich selbige erstellt, klappt ja wie gesagt, aber beim zweiten zugriff kommt dann noch zusätzlich die fehlermeldung:

Warning: fputs(): 39 is not a valid File-Handle resource in ...blabla apache..../reply.php on line 191

Warning: fclose(): 39 is not a valid File-Handle resource in ..bla bla../reply.php on line 192

:dontknow: was mach ich denn verdammt nochmal falsch?

(parse error machen verdammt schlechte laune wenn sie nicht verschwinden)

versuchs ma so:

...
$check_engine_topic_file = "blabla.dat"
if (file_exists($check_engine_topic_file))

{
chmod ($check_engine_topic_file, 0777);
$engine_topic_file = fopen($check_engine_topic_file,"a");
fputs ($engine_topic_file, $engine_topic_content);
fclose($engine_topic_file);
}
else
$engine_topic_file = fopen($check_engine_topic_file,"a");
chmod ($check_engine_topic_file, 0777);
fputs ($engine_topic_file, $engine_topic_new_content_file);
fclose($engine_topic_file);
$enginefile_read = fopen("file2.dat","a");
$content_index = "<li><a href=$labor-$topic_id.html>$topic_data[title]</a></li>";
fwrite($enginefile_read, $content_index );
fclose($enginefile_read);

...
[/PHP]

btw: welche zeile ist die zeile 192??

Geschrieben

so müsste es jetztz stimmen

...
$check_engine_topic_file = "blabla.dat"
if (file_exists($check_engine_topic_file))

{
chmod ($check_engine_topic_file, 0777);
$engine_topic_file = fopen($check_engine_topic_file,"a");
fputs ($engine_topic_file, $engine_topic_content);
fclose($engine_topic_file);
}
else
$engine_topic_file = fopen($check_engine_topic_file,"a");
if (!$engine_topic_file ) $engine_topic_file = fopen($check_engine_topic_file,"a");
chmod ($check_engine_topic_file, 0777);
fputs ($engine_topic_file, $engine_topic_new_content_file);
fclose($engine_topic_file);
$enginefile_read = fopen("file2.dat","a");
$content_index = "<li><a href=$labor-$topic_id.html>$topic_data[title]</a></li>";
fwrite($enginefile_read, $content_index );
fclose($enginefile_read);

...
[/PHP]

Geschrieben
Original geschrieben von Tiny Boom

...
$check_engine_topic_file = "blabla.dat"
if (file_exists($check_engine_topic_file))

{
$engine_topic_file = fopen("$check_engine_topic_file","a");
chmod ("$check_engine_topic_file", 0777);
fputs ($engine_topic_file, "$engine_topic_content");
fclose($engine_topic_file);
}
else
$engine_topic_file = fopen("$check_engine_topic_file","a");
chmod ("$check_engine_topic_file", 0777);
fputs ($engine_topic_file, "$engine_topic_new_content_file");
fclose($engine_topic_file);
$enginefile_read = fopen("file2.dat","a");
$content_index = "<li><a href=$labor-$topic_id.html>$topic_data[title]</a></li>";
fwrite($enginefile_read, "$content_index" );
fclose($enginefile_read);

...
[/PHP]

... nur macht das skript nicht was ich oben beschrieben habe, sondern macht immer dass, was nach else kommt, auch wenn die datei existiert. beim ersten zugriff auf die datei wird dann natürlich selbige erstellt, klappt ja wie gesagt, aber beim zweiten zugriff kommt dann noch zusätzlich die fehlermeldung:

or machen verdammt schlechte laune wenn sie nicht verschwinden) [/b]

Direkt hinter else fehlt ein "(" und am Ende deines Codes ein ")". So wie du das schreibst gehört alles ab chmod, egal wie weit du es einrückst, nicht mehr zum Else-Zweig.

hth

Reinhold

Geschrieben

ich glaube Reinhold meinte geschweifte Klammern, also


if ( Bedingung )
{
blabla
}
else
{
anderes bla
}
[/PHP]

zu der Sache mit dem ...not a valid File-Resource:

Überprüfe ob du den korrekten Pfad zur Datei hast

gruß gurkenpapst

Geschrieben
Original geschrieben von gurkenpapst

ich glaube Reinhold meinte geschweifte Klammern, also


if ( Bedingung )
{
blabla
}
else
{
anderes bla
}
[/PHP]

zu der Sache mit dem ...not a valid File-Resource:

Überprüfe ob du den korrekten Pfad zur Datei hast

gruß gurkenpapst [/b]

ja klar. hätte man eigentlich auf den ersten blick sehen müssen :WD

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...