Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]przesylanie obrazka do funkcji
mampolek
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 9.12.2009

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


Witam,

Chciałem zrobic sobie funkcje która skaluje zdjecia do okreslonych parametrów (wyciąłem niepotrzebną część kodu):

  1. function oblicz_proporcje($szerokosc_docelowa, $wysokosc_docelowa, $zdjecie)
  2. {
  3. list($szerokosc, $wysokosc) = getimagesize($zdjecie);
  4.  
  5. return $szerokosc;
  6. return $wysokosc;
  7. }


wywołuje funkcje:


  1. oblicz_proporcje("800", "600", $_FILES['plik']['tmp_name']);


i nie wczytuje $_FILES['plik']['tmp_name'], wiec dalej mi skrypt nie chce isc bo brakuje parametrow $szerokosc i $wysokosc Mogłby ktoś wytłumaczyć gdzie robię błąd? przypuszczam że w wprowadzaniu zmiennej $_FILES['plik']['tmp_name'] do funkcji?

ps. zapewne moge obliczyc przed funkcja rozmiar przetwarzanego obrazka i wprowadzic suche liczby do funkcji, ale chcialbym wiedziec czy nie mozna wykonac sposobem ktory probowalem na poczatku?



Ten post edytował mampolek 19.06.2012, 17:58:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Posio
post
Post #2





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


Podrzuce Ci tu funkcje które napisałem gdy zaczynałem swoja przygodę z php... amatorszczyzna ale działa. Dla początkującego czy do analizy, myśle że ci styknie.

2 funkcje, skalują obrazek biącąc pod kryteria szerokość albo wysokość:
  1. //RESIZE IMG//
  2.  
  3. function resizeImgH ($src, $newHeight, $save)
  4. {
  5. if (!is_readable($src)) { return FALSE; }
  6.  
  7. $info = @getimagesize($src);
  8. switch ($info['mime'])
  9. {
  10. case "image/gif":
  11. $src = imagecreatefromgif($src);
  12. break;
  13. case "image/jpeg":
  14. $src = imagecreatefromjpeg($src);
  15. break;
  16. case "image/png":
  17. $src = imagecreatefrompng($src);
  18. break;
  19. }
  20. $old_H = imageSY($src);
  21. $old_W = imageSX($src);
  22.  
  23. $new_H = $newHeight;
  24. $new_W = ($newHeight * $old_W) / $old_H;
  25.  
  26. $th = ImageCreateTrueColor($new_W, $new_H);
  27. imagecopyresampled($th, $src, 0, 0, 0, 0, $new_W, $new_H, $old_W, $old_H);
  28. imagejpeg($th, $save);
  29.  
  30. @imagedestroy($file);
  31. @imagedestroy($th);
  32. return TRUE;
  33. }
  34.  
  35.  
  36. function resizeImgW ($src, $newWidth, $save)
  37. {
  38. if (!is_readable($src)) { return FALSE; }
  39.  
  40. $info = @getimagesize($src);
  41. switch ($info['mime'])
  42. {
  43. case "image/gif":
  44. $src = imagecreatefromgif($src);
  45. break;
  46. case "image/jpeg":
  47. $src = imagecreatefromjpeg($src);
  48. break;
  49. case "image/png":
  50. $src = imagecreatefrompng($src);
  51. break;
  52. }
  53. $old_H = imageSY($src);
  54. $old_W = imageSX($src);
  55.  
  56. $new_H = ($newWidth * $old_H) / $old_W;
  57. $new_W = $newWidth;
  58.  
  59. $th = ImageCreateTrueColor($new_W, $new_H);
  60. imagecopyresampled($th, $src, 0, 0, 0, 0, $new_W, $new_H, $old_W, $old_H);
  61. imagejpeg($th, $save);
  62.  
  63. @imagedestroy($file);
  64. @imagedestroy($th);
  65. return TRUE;
  66. }


Pod $src mozesz oczywiscie wstawic
  1. $_FILES['plik']['tmp_name']
powinno działczyć.

Ten post edytował Posio 19.06.2012, 18:14:22
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: 9.10.2025 - 13:05