Fehler: In ein test.txt schreiben
E 150 D
- php
Versuche gerade in ein txt-file zu schreiben. So sieht mein Skript aus. Leider läuft es nicht auf meinem Server. Habe folgende Rechte vergeben: start.php 777 und news.txt 666
Mein Server unterstützt PHP 4.0
Leider bekomme ich immer eine 404 Fehlermeldung. seite oder script nicht gefunden. Woran kann es liegen?
if($HTTP_POST_VARS['submit']) {
if($HTTP_POST_VARS['password'] == 'meinpass') {
if(!$HTTP_POST_VARS['name']) {
echo "Name vergessen";
exit;
}
if(!$HTTP_POST_VARS['news']) {
echo "News eingeben";
exit;
}
if(strstr($HTTP_POST_VARS['name'],"|")) {
echo "Kein pipe symbol verwenden - |";
exit;
}
if(strstr($HTTP_POST_VARS['news'],"|")) {
echo "Kein pipe symbol verwenden - |";
exit;
}
$fp = fopen('news.txt','a');
if(!$fp) {
echo "Fehler beim Öffnen des Files!";
exit;
}
$line = date("m.d.y") . "|" . $HTTP_POST_VARS['name'];
$line .= "|" . $HTTP_POST_VARS['news'];
$line = str_replace("\r\n","<BR>",$line);
$line .= "\r\n";
fwrite($fp, $line);
if(!fclose($fp)) {
echo "Fehler beim schliessen des Files!";
exit;
}
} else {
echo "Falsches Password";
}
}
?>
<FORM ACTION="<?=$PHP_SELF?>" METHOD="POST" NAME="newsentry">
Your name:<BR>
<INPUT TYPE="text" SIZE="30" NAME="name"><BR>
The News:<BR>
<TEXTAREA NAME="news" COLS="40" ROWS="5"></TEXTAREA><BR><BR>
News Password:<BR>
<INPUT TYPE="password" SIZE="30" NAME="password"><BR>
<INPUT TYPE="submit" NAME="submit" VALUE="Jetzt abschicken!"><BR>
</FORM>
Hallo,
ohne jetzt dein Script genauer unter die Lupe genommen zu haben, möchte ich dich auf einige Dinge hinweisen :
das schreiben in die .txt funktioniert (bei mir zumindest) nur wenn sie auf 777 ist. (Wozu das Script eigentlich auf 777 ? , 755 genügt)
der Ordner in dem sich .txt befindet muss auf 777 sein (bei mir zumindest)
Wenn .txt sich nicht mit dem Script im selben Ornder befindet, siehe ob du beim öffnen/schreiben den richtigen Pfad angegeben hast.
So, sonst fällt mir momentan nichts ein, aber vielleicht hilfts weiter.
Danke soweit. Die Files habe ich auf 777 und 755 korrigiert.-
Das skript funktioniert leider noch nicht. Immernoch die Fehlermeldung 404 seite nicht gefunden.
Habs nochmal geupped. Jetzt funkioniert das schreiben ins die Textdate.
Danke nochmal.
E 150 D
777 oder 775 oder 000 ???
Mir steigen immer die Haare zu Berge, wenn ich lese, dass jemand seinen Server voll aufreißt. Da habe ich schon viel Lehrgeld bezahlt (Trafficgebühren), nur weil mir am Anfang auch niemand sagen konnte, wer eigentlich welche Rechte haben muss. Die "Profis" waren nämlich alle Luschen!
Dann habe ich mihc selber damit beschäftigt und mache es jetzt hoffentlich besser (sicherlich immer noch nicht "richtig").
Du verwendest sicher eine LAMP-Konfiguration (LINUX, APACHE, MySQL, PHP)??
Der Apache hat einen Usernamen, nämlich in der Rregel wwwrun. PHP läuft dann in der Standardinstallation unter diesem Namen.
Was hält Dich also davon ab, allen deinen Scripten die Rechte 740 zu geben und die Gruppe auf wwwrun umzustellen. Dateien, die der wwwrun beschreiben soll, sollten dann 760 bekommen. Fremde (also OTHERS) haben an Deinen Dateien nix zu suchen, auch wenn sie mit Hilfe des wwwrun in das Gästebuch (test.txt) reinschreiben sollen, aber doch nicht direkt über telnet oder ssh oder ftp oder was es sonst noch gibt - oder????
Liebe Grüße
Tom