php datei erstellen über php-script

Original geschrieben von KristophS
$datei = "$name";

Du willst eine Datei mit dem Namen $name erstellen?


Blödsinn, steht da ein " oder ein ' ? Ist nen großer Unterschied. :)

$datei = '$name'; würde als String dann $name haben, weil die Ausführungen jeglicher Befehlszeichen ignoriert werden. Auch ein \n für Zeilenumbruch würde ignoriert werden und einfach ins echo kommen.

bei " ist das aber andersrum.
 
Zuletzt bearbeitet:
das ist ne andere Frage, habe da nur die AUssage korrigiert.

möglich wäre es ja zum beispiel $datei = "user_$name"; um evtl eine gewisse übersicht hineinzubringen wenn man sehr viele datein hat etc.
 
Original geschrieben von KristophS
PHP:
$datei = "$name";
$fp = fopen($datei,"w");

fwrite($fp,$inhalt);
fclose($fp);


Du willst eine Datei mit dem Namen $name erstellen?
Oder dem Inhalt von $name?
Ich glaube nicht das ein Sonderzeichen wie $name erlaubt ist.
Wenn du allerdings den Inhalt der Variabel $name willlst :

PHP:
$datei = $name;
$fp = fopen($datei,"w");

fwrite($fp,$inhalt);
fclose($fp);

immernoch die gleichen fehler alle haben chmod 777
 
Dieser Code ist falsch, denn...

Code:
$datei = $name; 
$fp = fopen($datei,"w "); 

fwrite($fp,$inhalt); 
fclose($fp);

...wenn die Datei noch nicht besteht, funktioniert doch dies gar nicht.
Bei mir funktioniert das nur mit:

Code:
$datei = $name; 
$fp = fopen($datei,"w+ "); 

fwrite($fp,$inhalt); 
fclose($fp);

Denn dann wird die Datei erstellt, falls diese nicht besteht.
Ich hoffe ich schreibe hier nichts falsches, bitte verbessert mich
falls das oben genannte nicht stimmt.

Gruss, EyeOfTheTiger
 
Stimmt schon! Wenn die Datei noch nicht existiert muss es w+ heißen!

Das dachte ich zwar auch immer, aber siehe [phpf]fopen[/phpf]

Modus w
Öffnet die Datei nur zum Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert wird versucht sie anzulegen.

Naja, vielleicht ist das php.net doch nicht allwissend ;)
 
ich hatte es als erstes mit meinem ersten script aber nach dem dann das erste von euch kahm hab ich mir gedacht ihr könnts besser als ich und hab halt das + weggemacht. ich hatte des auch gelesen mit dem w+ aber naja ich probier das jetzt mal mit dem + aus und erstatte bericht ^^

edit:

PHP:
<?
$datei = $name; 
$fp = fopen($datei,"w+ "); 

fwrite($fp,$inhalt); 
fclose($fp);
?>

geht immernoch nicht immernoch der gleiche fehler
 
Zuletzt bearbeitet:
Gibt es denn irgendwelche anderen Beschränkungen auf deinem Webserver in Bezug auf Verzeichnisse und das Anlegen von Dateien, z.B. SAFE MODE?
 
Zurück