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)
Fehlermeldung im IE 7.0 bei RSS-Ausgabe [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Fehlermeldung im IE 7.0 bei RSS-Ausgabe


 
piet67
30-09-2006, 17:45 
 
Hallo,

ich bin leider ein Anfänger in Sachen php. Erhalte in unserem Newssystem bei der RSS-Ausgabe folgende Fehlermeldung:

Warning: file(templates/news.html): failed to open stream: No such file or directory in /www/htdocs/v123423/hc_news/admin/funktionen.php on line 117

Warning: implode(): Bad arguments. in /www/htdocs/v123423/hc_news/admin/funktionen.php on line 117

Hier der Auszug aus der dazugehörigen php-Datei (Zeile 117)

return str_replace("\"","\\\"",implode("",file($template)));

Fehlen hier im Code in irgend einer Form abschließende Zeichen, die diese Fehlermeldung auslösen?

Wäre für eine Hilfestellung sehr dankbar!

 
TobiaZ
30-09-2006, 17:47 
 
Dein Englisch reicht aber hoffentlich dafür die folgende Fehlermeldung No such file or directory zu verstehen?

 
piet67
30-09-2006, 20:49 
 
Hallo,

der Ordner samt Datei ist aber vorhanden. Es sind auch keine Schreibfehler drin. Muss ich eine spezielle Pfadangabe in der Zeile 117 einfügen um die Fehlermeldung zu beheben? :confused:

Sorry, bin halt mal absoluter Anfänger in Sachen php! :o

 
TobiaZ
30-09-2006, 20:57 
 
PHP Lügt nicht! :teach:

Existiert der Ordner templates IM Ordner admin??
Die Datei existiert auch darin?

 
3DMax
30-09-2006, 20:58 
 
Original geschrieben von piet67
Muss ich eine spezielle Pfadangabe in der Zeile 117 einfügen um die Fehlermeldung zu beheben?
das ganze läut genauso wie verweise in html. mach dir den unterschied zwischen absolut und relativ klar.

das könnte dir weiterhelfen, ist eine absolute pfadangabe: $_SERVER['DOCUMENT_ROOT'].'/templates/news.html';

 
piet67
01-10-2006, 08:48 
 
Guten Morgen,

erst einmal recht herzlichen Dank für die schnelle Hilfe!

@TobiaZ Der Ordner samt Datei ist nicht im Ordner "admin" vorhanden, sondern eine Stufe darunter. Die Ordnerstruktur ist folgendermaßen aufgebaut. [root], [hc_news] Ordner der Scripts!
.........................[admin]funktionen.php.....................................
.........................[templates]news.html......................................

Habe schon mal versucht den Ordner "templates" mit der Datei news.html im Adminordner zu erstellen, dann erhalte ich jedoch die gleiche Fehlermeldung.

Falls ich jetzt richtig überlegt habe, dann müsste ich doch den Link anstatt der Variablen $template einfügen oder?

function gettemplate($template)
{
return str_replace("\"","\\\"",implode("",file($template)));
}

Mir stellt sich jedoch die Frage, es müsste doch auch in irgend einer Form die Ausgabe von "file" definiert worden sein. Ansonsten würde doch wohl nicht auf der Ausgabeseite: Warning: file(templates/news.html): failed to open stream: erscheinen. :rolleyes:

 
TobiaZ
01-10-2006, 15:08 
 
@TobiaZ Der Ordner samt Datei ist nicht im Ordner "admin" vorhanden, sondern eine Stufe darunter. Wie kannst du dann behaupten, dass der Pfad korrekt wäre? - Ohne rot zu werden?

Korrigiere den Pfad, wie man absolute Pfadangaben macht, hat man dir bereits gesagt.

 
piet67
01-10-2006, 20:18 
 
Ich schäm mich jetzt ganz doll!:rolleyes:

Es bleibt für mich jedoch noch eine Frage offen, wo genau im Quelltext muss ich die Pfadangabe von 3DMax einfügen? Ich habe es hier versucht: return str_replace("\"","\\\"",implode("",file($_SERVER.....)));
funktionierte aber leider nicht. Wo genau müsste ich diese Angabe einfügen? :(

Habe einfach einmal nach file('http://www.xxx.de/hc_news/templates/news.html ')))); eingefügt, daraufhin wurde mir der rssfeed zwar angezeigt, jedoch zerschoss es mir dann teilweise das Layout des Newsscripts.

 
3DMax
01-10-2006, 21:15 
 
Original geschrieben von piet67
Es bleibt für mich jedoch noch eine Frage offen, wo genau im Quelltext muss ich die Pfadangabe von 3DMax einfügen? Ich habe es hier versucht: return str_replace("\"","\\\"",implode("",file($_SERVER.....)));
funktionierte aber leider nicht. Wo genau müsste ich diese Angabe einfügen? :(
"funktionierte aber leider nicht" ist keine fehlermeldung/-beschreibung.

am sinnigsten wäre es, das zentral in deiner funktion zu erledigen:
implode('', file($_SERVER['DOCUMENT_ROOT'].'/'.$template))


ps: urls in file-funktionen solltest du nicht verwenden - läuft auch nicht auf jedem server.


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:51 Uhr.