Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z copy() ..., ... permission denied
bobens_83
post 5.03.2006, 21:40:31
Post #1





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 7.11.2005
Skąd: z Czelsy

Ostrzeżenie: (0%)
-----


Witam. Mam taki problem, ze podczas pisania artykulu udostepniam mozliwosc zalaczenia kilku obrazkow.

Ten fragment kodu:
  1. <?php
  2.  
  3. if( count($image) >)
  4. {
  5. mkdir( 'img_art/'.mysql_insert_id(), 0777 );
  6. foreach( $image as $name=>$temp )
  7. {
  8. move_uploaded_file( $temp, 'img_art/'.mysql_insert_id().'/'.$name ); // bylo copy()
  9. }
  10. }
  11. ?>


Mechanizm dziala bez zarzutow. Natomiast pozniej daje mozliwosc modyfikacji artykulu, a w jej ramach min. mozliwosc dodania kolejnego obrazka.
  1. <?php
  2.  
  3. if( $_FILES['add_one']['name'] ){
  4. if( $_FILES['add_one']['error'] == 0 ){
  5. $dir = 'img_art/'.$add_one_id;
  6. move_uploaded_file( $_FILES['add_one']['tmp_name'], $dir.'/'.$FILES['add_one']['name'] ); // GLUPI BLAD!!!
  7. }
  8. ?>


Tym razem pojawia sie
Cytat
Warning: copy(img_art/11/) [function.copy]: failed to open stream: Permission denied in ...
Podpowiedzcie mi co jest zle, przeciez 0777 to chyba maksymalne uprawnienia, pozatym w pierwszym skrypcie copy() przebiega jaknajbardziej prawidlowo. worriedsmiley.gif

Pozdrawiam.

Ten post edytował bobens_83 5.03.2006, 22:41:02
Go to the top of the page
+Quote Post
chomiczek
post 5.03.2006, 21:45:27
Post #2





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


Zmień prawa dostępu do katalog oraz używaj move_uploaded_file


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
bobens_83
post 5.03.2006, 22:02:46
Post #3





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 7.11.2005
Skąd: z Czelsy

Ostrzeżenie: (0%)
-----


Cytat
używaj move_uploaded_file

- zmienione
Cytat
Zmień prawa dostępu do katalogu

- do ktorego katalogu, img_art? na czym polega zmiana owych praw? Prosze zeby ktos mi to wytlumaczyl, bo to nie pierwszy raz kiedy mam z tym problem. Czy chodzi tu o Change Attributesw Total Commanderze? Jesli tak to na jakie. dzialam na localhost, w tej chwili prawa tego katalogu to ---. Prosze o pomoc.

PS. Ciagle nie rozumiem czemu za pierwszym razem move_uploaded_file() za pierwszym razem wykonuje sie poprawnie a za drugim juz nie?
Go to the top of the page
+Quote Post
Koshin
post 5.03.2006, 22:34:09
Post #4





Grupa: Zarejestrowani
Postów: 196
Pomógł: 0
Dołączył: 29.04.2002
Skąd: jesteś?

Ostrzeżenie: (0%)
-----


Cytat(bobens_83 @ 2006-03-05 21:40:31)
Warning: copy(img_art/11/) [function.copy]: failed to open stream: Permission denied in ...

Mi się wydaje, że w tym komunikacie brakuje nazwy pliku, może w tym tkwi błąd?


--------------------
My czuwamy.eu abyś mógł spać spokojnie
zapasowakopia.pl - myśl zanim będzie za późno.
Go to the top of the page
+Quote Post
chomiczek
post 5.03.2006, 22:37:35
Post #5





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


Być może za drugim razaem nie działa, bo istnieje juz uploadowany plik.. sprawdź przed move_uploaded_file czy plik istniej file_exists i jeśli jest, a Ty wysyłasz nowy to użyj unlik aby skasować ten plik a dopiero potem wysyłaj plik.

Co do totalCommandera to aby zmienić prawa dostępu:
1. wejdź na FTPa
2. wybierz interesujący Cię katalog i zaznacz go
3. daj plik->zmien atrybuty i ustaw 777
4. zależnie od tego co masz w danym katalogu przed wysłaniem możesz zmieniać prawa (z poziomu PHPa) albo zostawic 777.

5. pokaż fragment kodu

Ten post edytował chomiczek 5.03.2006, 22:38:33


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
bobens_83
post 5.03.2006, 22:46:01
Post #6





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 7.11.2005
Skąd: z Czelsy

Ostrzeżenie: (0%)
-----


Koshin - Twoja sugestia sklonila mnie od wziecia mikroskopu i przeanalizowaniu kodu jeszcze raz. Blad zaznaczylem w kodzie powyzej, jest to $FILES , nic dziwnego ze za drugim nie uploadowalo... guitar.gif Nie wiem jak to jest ale czasem tak mam ze gapie sie na cos 10 razy a dopiero za 11-tym widze. mad.gif

chomiczek - to robie na FTP, ale poki co dzialam na localhost, a tam nie ma 'cyferek'. Czyli mowiac 'zmien prawa dostepu' miales na mysli prawa katalogu na serwerze przez FTP, tak?

Dziekuje bardzo za poswiecony czas Panowie aarambo.gif

Ten post edytował bobens_83 5.03.2006, 22:48:24
Go to the top of the page
+Quote Post
NetJaro
post 5.03.2006, 22:47:15
Post #7





Grupa: Zarejestrowani
Postów: 475
Pomógł: 0
Dołączył: 1.04.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


CHMOD'y tylko są na Unix'ach (czy Linuxach, ja sie nie znam jak to z tym jest) - wiem, że na Windowsach nie ma CHMOD'ów. Może na Windowsie masz zaznaczone w folderze/pliku "Tylko do odczytu"..
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 01:42