Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z funkcją move_upload_files
Solaris2001
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 24.07.2012

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


Witam. Napisałem sobie skrypt, który wgrywa zdjęcia na serwer, zmienia nazwę, przenosi do katalogu i wykonuje na pliku przekształcenia.
O ile dobrze działał na hoście cba.pl to na ugu.pl jest problem z przeniesieniem pliku z tmp do katalogu. Plik jest wgrywany bo normalnie działają funkcję porówniania rozmiaru, rozszerzenia. Niestety parser nie wywala żadnego błędu, tylko idzie dalej. Czy możecie mi powiedzieć o co chodzi? Poniżej wklejam fragment kodu odpowiedzialny za tą funkcję:
  1. $max_rozmiar = 3072*1024;
  2. if (isset ($_POST['submit'])){
  3. if (!empty($_POST['tytul'])){
  4. if (is_uploaded_file($_FILES['plik']['tmp_name'])) {
  5. if ($_FILES['plik']['size'] > $max_rozmiar) {
  6. $info = 'Błąd! Plik jest za duży!';
  7. $przerwij = true;
  8. }
  9. else if ($_FILES['plik']['type']!='image/jpeg'){
  10. $info = '<span style="color: red;">Niepoprawny format pliku. Akceptowane są pliki tylko z rozszerzeniem <b>.jpg</b>!</span>';
  11. $przerwij = true;
  12. }
  13. else {
  14. $info = 'Zdjęcie zostało dodane! Skopiuj kod poniżej i wklej go do tematu.';
  15. $plik_nazwa = nazwa_pliku();
  16. move_uploaded_file($_FILES['plik']['tmp_name'],$_SERVER['DOCUMENT_ROOT'].'/img/'.$plik_nazwa.'.jpg');
  17. mysql_query("INSERT INTO `galeria` (`tytul`,`opis`,`autor`,`adres`) VALUES ('".$_POST['tytul']."','".$_POST['opis']."','".$uzytkownik."','http://mpkoc.ugu.pl/img/".$plik_nazwa.".jpg')");
  18. }
  19. }
  20. ...


$_SERVER['DOCUMENT_ROOT'] - "/virtual/m/p/mpkoc.ugu.pl"
$_FILES['plik']['tmp_name'] - "/virtual/tmp/phpSmiPg6"

Ten post edytował Solaris2001 14.10.2012, 21:04:31
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cudny
post
Post #2





Grupa: Zarejestrowani
Postów: 387
Pomógł: 66
Dołączył: 31.03.2005
Skąd: Kielce

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


Cytat(abort @ 16.10.2012, 11:15:25 ) *
A wracając do meritum: zaproponuj jakieś rozwiązanie na problem z pierwszego posta albo zamilcz.


To było nie miłe, a co katalogów z fotkami to ja nigdy tam nie daje 777 (IMG:style_emoticons/default/exclamation.gif) ! - wystarczy is_dir( .. ) i utworzyć w razie potrzeby.
Nadawanie uprawnień 777 to dostęp nie tylko dla apache ! Poza tym po co ci prawo do wykonywania plików dla obrazków, co ?
Linux jest bezpieczny właśnie dzięki swoim ograniczonym uprawnieniom dla danych aplikacji / userów !
A dla twojej wiadomości korzystam tylko z VPS, niestety jeszcze nie stać mnie na dedyka.
Tak na prawdę wygodniej i taniej było by hostingować to na jakiś serwisach, ale korzystam nie tylko z apache, ale także z node.js więc potrzebuję pełnego dostępu do serwera.

A na PW nie mam czasu i potrzeby

Ten post edytował cudny 16.10.2012, 13:45:35
Go to the top of the page
+Quote Post
Uriziel01
post
Post #3





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


Cytat(cudny @ 16.10.2012, 14:45:14 ) *
To było nie miłe, a co katalogów z fotkami to ja nigdy tam nie daje 777 (IMG:style_emoticons/default/exclamation.gif) !


I to że ty nigdy tego nie robisz miało przekonać Twojego dyskutanta ? Nie widzę żadnego horroru w nadaniu (ale jest to EWENTUALNY punkt zainteresowania, to przyznaje), 777, z usuwaniem flagi wykonywalności nie ma co kombinować bo i tak mając w i interpreter PHP'a atakujący może zrobić dosłownie wszystko.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 30.12.2025 - 11:06