/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
fwrite fejl hos udbyder.???
Fra : gc


Dato : 18-02-08 11:18

Jeg prøver at lave en wysiwyg editor på min hjemmeside og bruger tiny_mce.

jeg bruger følgende kode til at læse en fil med indholdet ind i editoren:
<?php
$YourFile = "resultat1-data.php";
$handle = fopen($YourFile, 'r');
$data = fread($handle, 8192);
fclose($handle);
//print $Data;
?>
<form method="post" action="resultat1-gem.php">
<textarea name="content" cols="50" rows="15"><?php echo $data ?>
</textarea>
<input type="submit" value="Save" />
</form>

Når data er blevet ændret i tiny_mce bruger jeg følgende kode til at skrive
tilbage til datafilen

<?php
$data = $_POST['content'];
//print $data;
$YourFile = "resultat1-data.php";
$handling = fopen($YourFile, 'w');
fwrite($handling, $data);
fclose($handling);
header('Location: resultat1-editor.php');
exit;
?>

Alt virker perfekt på min localhost test server, men på min "rigtige
webserver"
får jeg en fejl når jeg forsøger at gemme ændringerne.

Warning: fopen(links-data.php) [function.fopen]: failed to open stream:
Permission denied in /usr/home/web/web241999/rcladmin/links-gem.php on line
5

Jeg har prøvet at ændre rettighederne til 777 men uden held.

Er der nogen der ved hvad det kan skyldes?
eller er der en bedre metode til at hente en fils indhold ind i et textarea
?

på forhånd tak
/gert



 
 
Martin (18-02-2008)
Kommentar
Fra : Martin


Dato : 18-02-08 11:52

gc wrote:
> Warning: fopen(links-data.php) [function.fopen]: failed to open stream:
> Permission denied in /usr/home/web/web241999/rcladmin/links-gem.php on line
> 5
>
> Jeg har prøvet at ændre rettighederne til 777 men uden held.
>
> Er der nogen der ved hvad det kan skyldes?
> eller er der en bedre metode til at hente en fils indhold ind i et textarea
> ?

chmod filen med 777 eller tilsvarende via FTP

gc (18-02-2008)
Kommentar
Fra : gc


Dato : 18-02-08 12:18

Tak martin.
men som jeg skriver det har jeg prøvet uden held.

"Martin" <maaNO@SPAMscandesigns.dk> skrev i en meddelelse
news:47b9634a$0$90272$14726298@news.sunsite.dk...
> gc wrote:
>> Warning: fopen(links-data.php) [function.fopen]: failed to open stream:
>> Permission denied in /usr/home/web/web241999/rcladmin/links-gem.php on
>> line 5
>>
>> Jeg har prøvet at ændre rettighederne til 777 men uden held.
>>
>> Er der nogen der ved hvad det kan skyldes?
>> eller er der en bedre metode til at hente en fils indhold ind i et
>> textarea ?
>
> chmod filen med 777 eller tilsvarende via FTP



Martin (19-02-2008)
Kommentar
Fra : Martin


Dato : 19-02-08 14:46

gc wrote:
> Tak martin.
> men som jeg skriver det har jeg prøvet uden held.

Ja, det sker man ikke læser hele dynen igennem :)

>
> "Martin" <maaNO@SPAMscandesigns.dk> skrev i en meddelelse
> news:47b9634a$0$90272$14726298@news.sunsite.dk...
>> gc wrote:
>>> Warning: fopen(links-data.php) [function.fopen]: failed to open stream:
>>> Permission denied in /usr/home/web/web241999/rcladmin/links-gem.php on
>>> line 5
>>>
>>> Jeg har prøvet at ændre rettighederne til 777 men uden held.
>>>
>>> Er der nogen der ved hvad det kan skyldes?
>>> eller er der en bedre metode til at hente en fils indhold ind i et
>>> textarea ?
>> chmod filen med 777 eller tilsvarende via FTP

Anyway - hvis du bruger PHP 5 (som du forhåbentlig gør!) - så drop
fwrite og fopen osv.

file_get_contents()
file_put_contents()

er meget nemmere at bruge :)

$text = file_get_contents($file);
file_put_contents($file,$text);

Dan Storm (18-02-2008)
Kommentar
Fra : Dan Storm


Dato : 18-02-08 13:27

gc skrev:
> [SNIP]

Kan du gemme dit data i en fil du opretter i samme omgang?
<?php
$data = $_POST['content'];
//print $data;
$YourFile = "test.php";
$handling = fopen($YourFile, 'w+'); // bemærk +'et
fwrite($handling, $data);
fclose($handling);
header('Location: test.php');
exit;
?>


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

gc (18-02-2008)
Kommentar
Fra : gc


Dato : 18-02-08 13:41

> Kan du gemme dit data i en fil du opretter i samme omgang?
> <?php
> $data = $_POST['content'];
> //print $data;
> $YourFile = "test.php";
> $handling = fopen($YourFile, 'w+'); // bemærk +'et
> fwrite($handling, $data);
> fclose($handling);
> header('Location: test.php');
> exit;
> ?>
Ja, den laver faktisk en test.php med det korrekte indhold.
hvordan får jeg den så til at skrive til en eksisterende fil.?



Dan Storm (18-02-2008)
Kommentar
Fra : Dan Storm


Dato : 18-02-08 13:53

gc skrev:
> Ja, den laver faktisk en test.php med det korrekte indhold.
> hvordan får jeg den så til at skrive til en eksisterende fil.?

Du kan prøve:

<?php
$data = $_POST['content'];
//print $data;
$YourFile = "resultat1-data.php";

if(!is_writable($YourFile))
   chmod($YourFile, 0777);

$handling = fopen($YourFile, 'w');
fwrite($handling, $data);
fclose($handling);
header('Location: resultat1-editor.php');
exit;
?>

--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

gc (18-02-2008)
Kommentar
Fra : gc


Dato : 18-02-08 13:50

Ok, det virker super nu.
Tak Dan.



Dan Storm (18-02-2008)
Kommentar
Fra : Dan Storm


Dato : 18-02-08 13:53

gc skrev:
> Ok, det virker super nu.
> Tak Dan.

Hvad var problemet?


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

gc (18-02-2008)
Kommentar
Fra : gc


Dato : 18-02-08 14:07

>
> Hvad var problemet?
>
ved det faktisk ikke helt, men de originale data filer var uploadet sammen
med resten
af sitet, men da jeg tilføjede dit + og oprettede filerne påny virker det.
filerne skal altså åbenbart oprettes derekte hos denne udbyder (10web.dk)
for at man
kan skrive til dem igen.
Men nu læser jeg indholdet ind i textarea og retter det der.
derefter gør jeg lige som før bare med w+, så virker det.

/Gert



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste