ini speichern, wiso geht es nicht?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
argument
array
code
datei
datum
erlaubnis
fehler
fehlermeldung
file
hunger
mahl
meldung
not
problem
rutsch
sagen
speichern
string
test
versuch
-
Hallo, ich will hiermit eine ini über speichern, also einfach die werte der array die ich bearbeitet habe wieder in die ini speichern
<?php function write_ini($file, $array){ foreach ($array as $k => $v) { if (is_array($v)) { fwrite($file,'['.$k."]\n" ); foreach ($v as $k2 => $v2) { fwrite($file, $k2.' = '.$v2."\n"); } } else { fwrite($file, $k.' = '.$v."\n"); } } } $datei = "test.ini"; $file = fopen("test.ini", "r+"); $userarray = parse_ini_file($datei); $userarray['Hunger'] = "ich bin ganz neu"; write_ini($file, $userarray); ?>
kann mir da jemand sagen wo der fehler ist, es kommt immer nur
Warning: fopen(test.ini) [function.fopen]: failed to open stream: Permission denied in /var/www/test.php on line 21
Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/test.php on line 15 <--- und das wiederholt sich dan mehrere mahle.
liebe grüße und guten rutsch. vw -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ganz einfach du hast einen String übergeben kein Filehandle:
$datei = "test.ini"; $file = fopen([b]$datei[/b], "r+"); $userarray = parse_ini_file([b]$file[/b]); $userarray['Hunger'] = "ich bin ganz neu"; write_ini($file, $userarray);
Wollte eigentlich einiges dick hervorheben, aber ging nicht, also beachte alles was in den bbcodes steht und entferne diese, wenn du es in den Quelltext einfügst.
Beitrag zuletzt geändert: 30.12.2010 12:20:29 von reimann -
Versuch doch einfach mal die Fehlermeldung zu lesen. Ist das wirklich so schwer? Ich helfe dir kurz und hebe sogar noch die Kernaussge hervor
valentinwinkelmann schrieb:
Warning: fopen(test.ini) [function.fopen]: failed to open stream: Permission denied in /var/www/test.php on line 21
Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/test.php on line 15
Weil fopen() keine Leserechte in dem File hat gibt es die Meldung "permission denied(Erlaubnis verweigert)"
Da fwrite() eine Ungültige resource von fopen bekommt. Gibt es natürlich auch nochmals eine Fehlermeldung aus "supplied argument is not a valid stream(Werde mit ungültigen Daten beliefert)"
Also einfach Lese und Schreibrechte geben und schon ist das Problem gelöst. Hätte man auch selbst drauf kommen können.
Edit:
Das mit dem
hab ich zuerst garnicht gesehen.$datei = "test.ini"; $file = fopen("test.ini", "r+");
Beitrag zuletzt geändert: 30.12.2010 12:40:23 von frnkymen -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage