PHP: include



  • Hallo

    Ich habe eine Seite in die ich ein fertiges Gästebuch einzubinden versucht habe:

    <?php
       include 'gaestebuch/gb.php';
    ?>
    

    Die Tabelle und die Eingabefelder werden zwar abgezeigt, aber es kommen folgende Fehlermeldungen:

    Warning: fopen("beta.txt","r+")- No such file ir directory in ...
    Und noch andere Meldungen ala kein file gefunden.

    Wenn ich das Gästebuch direkt (ohne erst einzubinden) öffne funktioniert alles.

    Was kann da los sein?

    Grüsse 🙂



  • Ich hab zwar keine Ahnung, woran das liegt, aber mir ist aufgefallen, dass include (jedensfalls bei mir) keine Unterverzeichnisse mag und entsprechend nur die Datein included, die im selben ordner liegen.

    mfg
    Glamdring



  • Das Script wird ja includiert, also somit im aktuellen Verzeichnis ausgeführt und nicht wie bei dir im Verzeichnis "gaestebuch". Ich denke mal, wenn du in der gb.php dem String zur Datei auch noch das Verzeichnis "gaestebuch" mit gibst, sollte es funktionieren.



  • Hmm...die oben beschriebenen Probleme gab es bei lokalem Test.

    Jetzt (gb.php wird nicht mehr includiert sonder durch Link geöffnet) gibt es folgende Fehler:

    Warning: fopen(beta.txt) [function.fopen]: failed to create stream: Permission denied in /www/htdocs/abcd/gaestebuch/gb.php on line 185
    
    Warning: fread(): supplied argument is not a valid stream resource in /www/htdocs/abcd/gaestebuch/gb.php on line 186
    
    Warning: fclose(): supplied argument is not a valid stream resource in /www/htdocs/abcd/gaestebuch/gb.php on line 189
    
    --------------------------------------------------------------------------------
    Seite: 
    Insgesamt 0 Einträge auf 0 Seite/n
    
    Warning: fopen(beta.txt) [function.fopen]: failed to create stream: Permission denied in /www/htdocs/abcd/gaestebuch/gb.php on line 332
    
    Warning: fread(): supplied argument is not a valid stream resource in /www/htdocs/abcd/gaestebuch/gb.php on line 333
    
    Warning: fclose(): supplied argument is not a valid stream resource in /www/htdocs/abcd/gaestebuch/gb.php on line 337
    

    Lokal gab es so allerdings keine Probleme.
    Was ist da los???



  • Existiert die Datei auf dem Server und hast du Schreibrechte darauf? Falls nicht musst du diese zuerst mit chmod (z.B. über deinen FTP-Client) setzen 😉



  • Hey, danke flenders 👍
    Schreibrechte waren nur für "Owner" und nicht für andere gesetzt.
    thx 🙂



  • Idealerweise sollten andere aber keine Schreibrechte drauf haben (müssen)...



  • @geeky
    Aber wenn das Gästebuch die Kommentare in einer txt Datei speichert ist das doch die einzige Möglichkeit, nicht?
    Aber ich könnte doch die txt Datei ein ein geschütztes Verzeichnis packen...



  • Idealerweise sollte php mit der user-id vom script-besitzer laufen. Da der Script-Besitzer normalerweise auch der Besitzer der Dateien auf dem ftp ist müssten dann eigentlich schreibrechte für den owner reichen...


Anmelden zum Antworten