Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak zrobić skalowanie zdjęć dodawanych do galerii?
Poczatkujacy_Web
post
Post #1





Grupa: Zarejestrowani
Postów: 145
Pomógł: 0
Dołączył: 30.07.2012
Skąd: Łódź

Ostrzeżenie: (10%)
X----


Witam,

poniżej kod jakiego używam do dodawania zdjęć do galerii na serwerze. Chciałbym dorobić automatyczne skalowanie rozmiaru zdjęć do 800x600 jeśli zdjęcie jest większych rozmiarów, a jeśli mniejszych to aby nie zostało skalowane. Uczę się php i nie za bardzo wiem jak się za to zabrać, gdyby ktoś mógł pomóc rozwiązać mój problem to byłbym wdzięczny.

Aaaa... jeszcze gdybyście mogli mi pomóc z sensownym tworzeniem miniatur, w senie aby z przeskalowanego już zdjęcia stworzyć miniaturę z części tego zdjęcia, tak aby nie było zniekształcenia, no chyba że jest na to jakiś lepszy sposób.

z góry dziękuje!

  1. <form action="" method="post" enctype="multipart/form-data">
  2. <input name="image" type="file">
  3. <input name="" type="submit">
  4. </form>
  5.  
  6. <?php
  7. $plik_tmp = $_FILES['image']['tmp_name'];
  8. $plik_nazwa = $_FILES['image']['name'];
  9.  
  10. $save_file = $plik_nazwa;
  11.  
  12.  
  13. if(is_uploaded_file($plik_tmp)) {
  14. move_uploaded_file($plik_tmp, 'images/normal/'.$save_file.'');
  15. echo "wszystko poszlo ok";
  16.  
  17.  
  18.  
  19. $img = imagecreatefromjpeg('images/normal/'.$save_file.'');
  20.  
  21. $width = imagesx($img);
  22. $height = imagesy($img);
  23.  
  24.  
  25. $width_mini = 250; // szerokosc obrazka
  26. $height_mini = 170; // wysokosc obrazka
  27. $img_mini = imagecreatetruecolor($width_mini, $height_mini);
  28.  
  29.  
  30. imagecopyresampled($img_mini, $img, 0, 0, 0, 0, $width_mini , $height_mini, $width , $height);
  31.  
  32.  
  33. imagejpeg($img_mini, "images/mini/".$save_file."", 80); // utworzona miniaturka liczba (80) oznacza jakos obrazka od 0 do 100
  34. imagedestroy($img);
  35. imagedestroy($img_mini);
  36.  
  37. }
  38. ?>
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: 23.08.2025 - 06:51