PHP Fehler code - versteh ich nicht
Stahl Florian
- php
Hallo an alle,
Ich habe meine neue Homepage weitergemacht, aber jetzt sehe ich eine Fehlermeldung in der navi, die ich aber nicht verstehe und auch nicht weiterkomme.
[link: http://www.brk-feucht.de]
Es handelt sich um einen Code, der die aktuelle Anzahl der Besucher anzeigt.
Mit freundlichen Grüssen
------------------------
Stahl Florian
------------------------
Hallo,
die erste Fehlermeldung sagt, dass das PHP-Skript keinen Zugriff auf die Datei besucher.txt hat. Daraus resultieren die anderen Fehlermeldungen, das in einer nicht geöffneten Datei nicht geschrieben werden kann.
Die Rechte für den Ordner in dem die besucher.txt müssen auf CHMOD777 gesetzt werden, was heißt, dass auch Skripte aus anderen Verzeichnissen darauf Zugriff haben. Dafür musst du die Eigenschaften des Verzeichnisses mit deinem FTP-Programm ändern. (Geht meist mit Rechtsklick auf das Verzeichnis und dann auf Eigenschaften/CHMOD)
MfG,
Christian
Hallo an alle,
Danke, hat funktioniert.
Mit freundlichen Grüssen
------------------------
Stahl Florian
------------------------
Hallo Christian.
Die Rechte für den Ordner in dem die besucher.txt müssen auf CHMOD777 gesetzt werden, […]
Du willst die besucher.txt ausführbar machen?
Wenn nicht, dann genügt 666 als Rechtevergabe.
Einen schönen Sonntag noch.
Gruß, Ashura
echo $begrüßung;
Die Rechte für den Ordner in dem die besucher.txt müssen auf CHMOD777 gesetzt werden, […]
Du willst die besucher.txt ausführbar machen?
Wenn nicht, dann genügt 666 als Rechtevergabe.
Mal abgesehen von dem fehlenden Wort "liegt" bezieht sich doch das "CHMOD777" auf den Ordner und der sollte im Allgemeinen das execute-Recht haben, wenn man darin Dateien anlegen möchte.
Es ist aber nicht besonders geschickt, wenn man von Rechten spricht, den unter Unix üblichen Befehl zum Setzen von Rechten als ein Teil der Rechte selbst anzugeben: CHMOD777 statt nur 777.
Und noch ungeschickter ist, pauschal 777 (Lese-, Schreib- und Ausführ-Rechte) bzw. pauschal irgendwelche Einstellungen zu empfehlen, ohne sich einerseits mit der Rechtesystem unter Unix und andererseits mit den konkreten Bedingungen auf dem System auszukennen. Welchem User gehört die Datei/das Verzeichnis? Welcher User soll darauf zugreifen? Wie sind die Gruppenzugehörigkeiten? usw. usf. Anhand dieser Informationen sollte man die benötigten Rechte vergeben.
echo "$verabschiedung $name";
Hallo dedlfix.
Mal abgesehen von dem fehlenden Wort "liegt" bezieht sich doch das "CHMOD777" auf den Ordner und der sollte im Allgemeinen das execute-Recht haben, wenn man darin Dateien anlegen möchte.
Da hast du Recht, ich hatte dies fehlinterpretiert.
Einen schönen Montag noch.
Gruß, Ashura
hallo Florian,
Ich habe [...] eine Fehlermeldung in der navi, die ich aber nicht verstehe
Es handelt sich um einen Code, der die aktuelle Anzahl der Besucher anzeigt
Das tut er eben nicht, sondern er erzeugt eine Fehlermeldung. Wie nahezu immer bekommst du auch genau die Zeile deines Scripts benannt, in der der Fehler das erstemal wirksam wird - "wirksam werden" bedeutet _nicht_, daß die Zeile selbst fehlerhaft ist, es kann auch schon davor etwas falsch sein.
Bei dir ist es nun die Zeile 90 deiner index.php, in der das erstemal etwas nicht stimmt. Was steht in dieser Zeile?
Wenn du eine Meldung über "fopen(besucher.txt): failed to open stream: Permission denied" erhältst, bedeutet das möglicherweise, daß deine php.ini eine für "fopen" benötigte Einstellung nicht enthält. Konkreteres liest du bitte im PHP-Handbuch nach. Die Einstellung in der php.ini, die du brauchst, betrifft "allow_url_fopen" - allerdings weist deine Fehlermeldung keine "url" aus. Eine zweite Möglichkeit für ein Zugriffsverbot könnte in ungenügenden Rechten bestehen.
Grüße aus Berlin
Christoph S.
echo $begrüßung;
"Leider" ist die Fehlermeldung auf Florians Seite nicht mehr zu sehen, und es wahr auch ungeschickt, nur auf die Seiten zu verweisen, statt den Wortlaut der Meldung hierher zu kopieren, damit später mit eben diesem Wortlaut Suchende diesen vielleicht nützlichen Faden finden können ...
Wenn du eine Meldung über "fopen(besucher.txt): failed to open stream: Permission denied" erhältst, bedeutet das möglicherweise, daß deine php.ini eine für "fopen" benötigte Einstellung nicht enthält. [...] Die Einstellung in der php.ini, die du brauchst, betrifft "allow_url_fopen" -
Das ist in diesem Zusammenhang bedeutungslos. Soweit ich aus den (noch) zur Verfügung stehenden Informationen entnehme, soll nur ein Zugriff auf eine lokale Datei erfolgen. Da braucht man weder eine URL noch einen Wrapper, der eine über irgendwelche Protokolle erreichbare Ressource mittels Dateifunktionen zugreifbar zur Verfügung stellt.
allerdings weist deine Fehlermeldung keine "url" aus.
Eben ...
echo "$verabschiedung $name";
hallo dedlfix,
"Leider" ist die Fehlermeldung auf Florians Seite nicht mehr zu sehen, und es wahr auch ungeschickt, nur auf die Seiten zu verweisen, statt den Wortlaut der Meldung hierher zu kopieren
Du kannst aber auch sowas von recht haben ... da fühle ich mich auch gescholten, weil ich dieses Manko natürlich bemerkt habe und die vollständige Fehlermeldung hätte kolportieren sollen.
Die Einstellung in der php.ini, die du brauchst, betrifft "allow_url_fopen" -
Das ist in diesem Zusammenhang bedeutungslos.
Ja, ist es, da es sich, wie ich selber bereits angegeben habe, nicht um eine URL handelt, die mit fopen angesprochen werden soll:
allerdings weist deine Fehlermeldung keine "url" aus.
Eben ...
Hm. und nu? Welche neuen Erkenntnisse (daß es auch auf die Rechtevergabe ankommt, wurde bereits diskutiert) steuerst du jetzt bei?
Grüße aus Berlin
Christoph S.
echo $begrüßung;
[...] es wahr auch ungeschickt [...]
Wer hat denn da das falsche "h" eingefügt?
Hm. und nu? Welche neuen Erkenntnisse (daß es auch auf die Rechtevergabe ankommt, wurde bereits diskutiert) steuerst du jetzt bei?
Nun, ich wunderte mich darüber, dass du den OP auf eine Problematik verweist, die mit seinem Problem nichts zu tun hat, und mit der er sich nur andere potentielle Löcher im System öffnet. Außerdem war (ohne h) ich mir nicht ganz sicher, ob du dir der Bedeutung der von dir angeführten Funktionalität bewusst warst und wollte das nochmal hervorheben, was du mit einem Nebensatz abgetan hast.
Ich könnte auch noch auch andere Dinge verweisen, allerdings besteht da auch kein Zusammenhang mit dem Problem des OPs ...
echo "$verabschiedung $name";
hi,
[...] es wahr auch ungeschickt [...]
Wer hat denn da das falsche "h" eingefügt?
Das wahrst du selber, und ich wasche ganz österlich meine Hände in Unschuld.
Nun, ich wunderte mich darüber, dass du den OP auf eine Problematik verweist, die mit seinem Problem nichts zu tun hat
Naja, ich habe eine mögliche Stolperstelle für "fopen" benannt und zugleich eingeräumt, daß das beim gegenwärtigen Stand seiner Fehlermeldungen nicht von Belang ist. Es war vorausschauend notiert. Und der Verweis auf die Stelle, an der der tatsächliche Fehler saß (also die Rechtevergabe) kam ja auch noch.
Außerdem war (ohne h) ich mir nicht ganz sicher, ob du dir der Bedeutung der von dir angeführten Funktionalität bewusst warst
Doch, das war ich wahrhaftig ;-)
Ich könnte auch noch auch andere Dinge verweisen, allerdings besteht da auch kein Zusammenhang mit dem Problem des OPs ...
Macht nichts. Davon könnte man gelegentlich noch mehr brauchen, seit es die message-Grafiken nicht mehr gibt.
Grüße aus Berlin
Christoph S.
Hallo dedlfix.
Ich könnte auch noch auch andere Dinge verweisen, allerdings besteht da auch kein Zusammenhang mit dem Problem des OPs ...
YMMN.
Einen schönen Montag noch.
Gruß, Ashura