2011-01-03 5 views
0

Ich bin ein Tutorial auf PHP folgen, und habe Schwierigkeiten, dies zu arbeiten. Ich habe die entsprechenden Verzeichnisberechtigungen zum Lesen und Schreiben festgelegt, aber jedes Mal, wenn ich das ausführe, erhalte ich die Zeichenkette.php fopen Funktion stirbt, obwohl ich Dateiberechtigungen zum Lesen und Schreiben eingestellt haben

Der Code ist:

$ourFileName = "testFile.txt"; 
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file"); 
fclose($ourFileHandle); 

Soweit mein Grundverständnis geht, wenn „Testfile.txt“, nicht vorhanden ist fopen diese Datei erstellen soll (ich habe Grundkenntnisse in Python, und erinnere mich an diesen gleichen Prinzip in dieser Sprache). Aber es ... es nicht. Selbst wenn ich die oben erwähnte Datei erstelle und auflege, gibt diese Codezeile immer noch eine Stanzlinie zurück.

Mein Hosting-Account gibt mir keine Berechtigung zur Ausführung. Ist das ein Problem?

Mein Server läuft unter Windows. Ich verwende Dreamweaver CS5 unter OSX 10.5.8.

Ich habe einige Suche auf diesem, und sehe andere Leute mit ähnlichen Problemen - aber keiner von ihnen genau auf meine Palette von Problemen. Da ich ein Anfänger bin, fühle ich, dass es etwas ist, das ich übersehe.

Danke !!

+2

Entfernen Sie die oder sterben ("Datei kann nicht geöffnet werden"); und sehen, welche Fehler/Warnung fopen werfen –

+0

Sofern Sie aus irgendeinem Grund Ihre eigene Fehlermeldung anzeigen möchten, wenn dies fehlschlägt, unterstütze ich Shakti nicht mit oder sterben, da die Standardfehlermeldungen (fast) immer hilfreicher sein werden – Sondre

+1

@Shakti this sterben operator Unterdrücken Sie keine Fehlermeldungen. Also wird das Entfernen nichts helfen –

Antwort

0

Die ‚oder sterben‘ muß nicht wirklich viel für Sie tun andere als das Skript zu töten ...

Sehen als Ihr Code sollte funktionieren ... Versuchen Sie das Debuggen:

dies an der Spitze Setzen Ihrer php

error_reporting(E_ALL); 
ini_set('display_errors','1'); 
-1

Problem behoben. Ich benutze godaddy und habe sie meinen Account - der zuvor auf einem Windows-Server untergebracht war - auf einen Linux-Account umstellen lassen. Mit Windows hatte ich nicht so viel Kontrolle über Dateiberechtigungen. Jetzt mache ich - und jetzt funktioniert dieser Code wie er sollte.