![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam skrypt, który uploaduje mi pliki na serwer. Chciałbym, żeby pliki były zapisywane w głównym katalogu na serwerze (tam, gdzie plik index.php), lecz nie wiem czy to jest bezpieczne, gdyż muszę mu nadać atrybut 777, a jeśli zmienię na 750 (takie mam domyślne), to wtedy funkcja nie działa. I teraz, czy to jest bezpieczne, czy raczej tak się nie powinno robić (chodzi o zmienianie atrybutów na 777) ![]() Proszę o odp. lub jakieś rady jak ewentualnie zmodyfikować tą funkcję, żeby zapisywała pliki w folderze z atrybutem 750. ewentualnie będę wdzięczny za jakiś inny sposób rozwiązania tego problemu. Tu jest kod pliku upload.php
Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 595 Pomógł: 282 Dołączył: 24.09.2007 Skąd: Reda, Pomorskie. Ostrzeżenie: (0%) ![]() ![]() |
nie jest to bezpieczne. zrób podkatalog serwisu i tam nadaj uprawnienia do uploadu. jeśli koniecznie potrzebujesz tych plików tam gdzie index.php (ścieżki ci nie działają czy co?), to po uploadzie przenoś je tam skryptem po stronie serwera...
Ten post edytował nevt 30.10.2007, 16:55:52 -------------------- - Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... - |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
a czy jest jakaś funkcja, która do tego służy, czy może trzeba ją samemu napisać.
Proszę o jakieś wskazówki Ten post edytował puz219 30.10.2007, 18:24:03 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
ale o jaka funckje chodzi do czego?bo juz nie rozumiem
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
chodzi o funkcję, która przeniesie mi plik z jednego folderu na serwerze do drugiego folderu na tym samym serwerze.
Czy taka funkcja istnieje?? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
mozesz uzyc do tego copy() rename() lub nie wiem czy tak mozna ale moglbys je tez skopiowac za pomoca exec() system() lub fpassthru()
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
tylko, że znów jest problem.
Ani funkcja copy(), ani rename() nie działa. Wyświetla sie błąd - PERMITION DENIED, co oznacza, że nie mam praw do zapisu pliku w tym folderze, chodzi o folder główny (chmod ustawione na 750). Czy nie da się tego ominąć, bez zmieniania chmod-ów, bo jest to upload dostępny tylko dla użytkowników o prawach administratora serwisu, czyli jak narazie tylko dla mnie. Proszę o pomoc. Ten post edytował puz219 31.10.2007, 07:42:38 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 30.10.2007 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
Można spróbować
<?php $lokalizacja = "/inny folder/".$nowanazwapliku; move_uploaded_file($_FILES[$nazwapliku]['tmp_name'], $lokalizacja); chmod($lokalizacja, 0777); ?> -------------------- www.cfstudio.pl
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
wygląda na to, że i ta opcja nie działa, ale to jest nawet dobry pomysł, tylko, żeby to robiło w ten sposób, najpierw zmieniało chmod folderu głównego na 777, potem przenosiło do niego plik, a po tym zmieniało z powrotem chmod na 750.
Lecz funkcja chmod nie działa u mnie prawidłowo - brak dostępu. czy ktoś ma jeszcze jakieś pomysły, bo mi sie już wyczerpały ![]() Ten post edytował puz219 31.10.2007, 11:47:58 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
a spruboj exec()
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 201 Pomógł: 0 Dołączył: 1.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ale funkcja exec()" title="Zobacz w manualu PHP" target="_manual to jest chyba do uruchomienia jakiegoś programu, o ile dobrze rozumuję z manuala, nie wiem jak za jej pomocą przenieść plik.
Mógłbyś i wyjaśnić? |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
nie wiem czy tak mozna zrobic ale jeste polecenie systemowe linux'a
Cytat cp plik.php folder/sciezka a win32 jest chyba copy ale nie wiem czy tak mozna zrobic nigdy nie probowalem -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 06:14 |