Avatar billede qub- Novice
02. februar 2009 - 13:26 Der er 11 kommentarer og
1 løsning

Bliver ved med at få fejl med rename

Hejsa..

Jeg bliver ved med at få følgende fejl når jeg skal rename en mappe..:

Warning: rename() [function.rename]: Unable to access in /customers/nystedvandsport.dk/nystedvandsport.dk/httpd.www/ny/scripts/gallery/functions.php on line 21


Jeg har testet at både stien og mappen findes...
Og jeg har endda prøvet at sætte mappen til chmod 777 (som så vidt jeg har forstået gir alle rettigheder)..

Jeg ved virkelig ik hvad der er galt...
Avatar billede jakobdo Ekspert
02. februar 2009 - 21:19 #1
Og du er sikker på du har den rigtige sti i rename ?
Og du rammer den rigtige mappe ?
Og det er den rigtige mappe som er chmod'et ?
Avatar billede welcor Nybegynder
02. februar 2009 - 21:45 #2
jeppe at bundsgaard dot net  skriver på http://no2.php.net/rename:

"Until recently you could end the dirname your wanted to rename to with a slash:

rename("mydir/my2nddir/","mydir/my3nddir/")

But now it doesn't work (php warns that it is unable to access mydir/my3nddir/).

So always leave out a final slash in your dirname:

rename("mydir/my2nddir","mydir/my3nddir")

The same goes for mkdir(). "

Så, kort sagt, fjern / fra slutten af dine stier.
Avatar billede hkb-x Nybegynder
03. februar 2009 - 00:36 #3
Prøv at tjekke rettighederne på selve filen. Nogle gange kan de risikere at få andre rettigheder end selva mappen.
Avatar billede qub- Novice
03. februar 2009 - 10:56 #4
Har tjekket:

Mapperne IKKE slutter med en /
Tjekket at mappen eksistere med file_exists
Tjekket at det er den rigtige sti med realpath
Har prøvet både og sætte chmod til 777 og 757

Det underlige er jo lidt at det fungere helt fint at oprette nye mapper med mkdir.. Og fungere os fint at slette mapper...

Jeg er helt blank på det her
Avatar billede jakobgt Nybegynder
03. februar 2009 - 15:22 #5
Ifølge kommentarerne på http://dk.php.net/manual/en/function.rename.php kan man heller ikke have en åben file handle til det man må omdøbe, så det har du vel heller ikke?
Hvad med permissions på mappen, som mappen, der skal omdøbes ligger i?
Kan du kopiere mappen med copy?
Avatar billede qub- Novice
03. februar 2009 - 17:10 #6
Jeg har prøvet at sætte alle mappernes permissions til 777, ingen effekt..
og nej, jeg kan heller ikke copy.. Der kommer samme fejl
Avatar billede jakobgt Nybegynder
03. februar 2009 - 17:20 #7
Er safemod enabled på din server? I så fald kan der godt være problemer med at få PHP til at rename.

Du kan evt. prøve at chown'e en test mappe til webserverens bruger og prøve på den.

Se mere her: http://dk.php.net/manual/en/features.safe-mode.functions.php
Avatar billede qub- Novice
03. februar 2009 - 17:23 #8
Der fandt jeg sku fejlen... Eller fatter ik hvorfor det gav fejl, men nu virker det ihvertfald.. :P

Før så den sådan ud:

function editdir($folder, $new_name, $name) {

    $old_dir_name = '../../'.$folder.'/'.$name.'';
    $new_dir_name = '../../'.$folder.'/'.$new_name.'';
    rename($old_dir_nam, $new_dir_name);

    header("Location: ../../popup_pictures.php?folder=".$folder."");
}


Så ændrede jeg til bare:

rename("../../".$folder."/".$name."", "../../".$folder."/".$new_name."");



ved ik lige hvorfor.. men nu virker det da :)

I må gerne få points hvis i vil.. I har trods alt vist stor interesse for at hjælpe :)
Avatar billede jakobgt Nybegynder
03. februar 2009 - 17:29 #9
Det var fordi du i koden har skrevet $old_dir_nam og ikke $old_dir_name (der mangler et e til sidst).
Den slags fejl finder man nemt ved at ændre error_reporting.
Placer dette øverst i din kode og du vil blive informeret hver gang du bruger en variabel inden du har lagt en værdi i den.

// Report all PHP errors
error_reporting(E_ALL);

Det er en super lækker feature at bruge, for den fanger mange slåfejl og stavefejl.
Du kan læse mere om den her: dk.php.net/error_reporting
Avatar billede qub- Novice
03. februar 2009 - 17:34 #10
tusind tak for det.. :)
Smider du ik lige et svar
Avatar billede jakobgt Nybegynder
03. februar 2009 - 17:36 #11
Svar.
Avatar billede jakobgt Nybegynder
03. februar 2009 - 23:38 #12
Takker for point
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester