Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] problem z funkcją do robienia miniaturek
Forum PHP.pl > Forum > Przedszkole
Zimon
używając ponizszego kodu pliki mi się nie upladują na serwer i miniaturka się nie tworzy

  1. <?php
  2. function imgType($name)
  3. {
  4. $roz = strtolower(substr($name,-4));
  5.  if($roz == '.jpg' || $roz == 'jpeg' || $roz == '.jpe')
  6.  {
  7. return "IMAGETYPE_JPEG";
  8.  }
  9.  elseif($roz == '.gif')
  10.  {
  11. return "IMAGETYPE_GIF";
  12.  }
  13.  elseif($roz == '.png')
  14.  {
  15. return "IMAGETYPE_PNG";
  16.  }
  17. }
  18.  
  19. function resizeImage($source, $max_x, $max_y, $save_image, $jpeg_quality = 80)
  20. {
  21.  /*
  22. * source - obrazek jpeg
  23. * max_x - maksymalna szerokosc pomniejszonego obrazka
  24. * max_y - maksymalna dlugosc pomniejszonego obrazka
  25. * save_image - nazwa pliku do ktorego zostanie zapisany nowy obrazek
  26. * jpeg_quality - jakosc powstalego obrazu jpeg - jezeli bedzie inny to argument jest nie wazny (domyslnie 100)
  27. */
  28.  
  29. if (imgType($source) == "IMAGETYPE_JPEG"){
  30. $img_src = imagecreatefromjpeg($source);
  31. } else if (imgType($source) == "IMAGETYPE_GIF"){
  32. $img_src = imagecreatefromgif($source);
  33. } else if (imgType($source) == "IMAGETYPE_PNG"){
  34. $img_src = imagecreatefrompng($source);
  35. } else {
  36. die('Wrong filetype! Accepted images: JPG/JPEG, GIF, PNG');
  37. }
  38.  
  39. $image_x = imagesx($img_src);
  40. $image_y = imagesy($img_src);
  41. if($image_x > $image_y) { // Landscape
  42. $ratio_x = ($image_x > $max_x) ? $max_x/$image_x : 1;
  43. $ratio_y = $ratio_x;
  44. $move = 'y';
  45. } else { // Portrait
  46. $ratio_y = ($image_y > $max_y) ? $max_y/$image_y : 1;
  47. $ratio_x = $ratio_y;
  48. $move = 'x';
  49. }
  50. $new_x = $image_x*$ratio_x;
  51. $new_y = $image_y*$ratio_y;
  52.  
  53. $new_img = imagecreatetruecolor($new_x, $new_y);
  54. imagecopyresampled($new_img, $img_src, 0, 0, 0, 0, $new_x, $new_y, $image_x, $image_y);
  55.  
  56. if(imgType($save_image) == "IMAGETYPE_JPEG") {
  57. imagejpeg($new_img, $save_image, $jpeg_quality);
  58. } else if (imgType($save_image) == "IMAGETYPE_GIF") {
  59. imagegif($new_img, $save_image);
  60. } else if (imgType($save_image) == "IMAGETYPE_PNG") {
  61. imagepng($new_img, $save_image);
  62. }
  63.  
  64. //echo '<img src="'.$save_image.'" border="1">';
  65. }
  66.  
  67. $img = $_FILES['zdjecie']['tmp_name'];
  68. $info = getimagesize($img); //pobranie info o rozmiarach obrazka
  69.  
  70. $name = md5(microtime()); //wygenerowanie autoamtycznej nazwy
  71. $tab = explode(".", $url); //rozdzielenie nazwy od rozszerzenia
  72. $roz = count($tab);
  73. $roz = $tab[$roz-1];
  74. $name = $name.'.'.$roz;
  75.  
  76. $url = $_FILES['zdjecie']['name'];
  77. $uploaded = "../img/galery/".$url;
  78.  
  79. if (is_uploaded_file($_FILES['zdjecie']['tmp_name']))
  80. {
  81. move_uploaded_file($_FILES['zdjecie']['tmp_name'],$uploaded);
  82. echo "Operacja przebiegła pomyślnie";
  83.  
  84. }
  85. else {
  86. echo 'Błąd przy przesyłaniu danych!';
  87. }
  88. chmod($uploaded, 0777);
  89.  
  90.  
  91. if ($info[0] > 1024 || $info[1] > 768)
  92. {
  93. resizeImage('../img/galery/'.$url, '1024', '768', '../img/galery/'.$name);
  94. unlink('../img/galery/'.$url);
  95. }
  96. else 
  97. {
  98. resizeImage('../img/galery/'.$name, '120', '90', '../img/galery/m_'.$name);
  99. }
  100. ?>
Saddam92
  1. <?php
  2. if (is_uploaded_file($_FILES['zdjecie']['tmp_name']))
  3. {
  4. move_uploaded_file($_FILES['zdjecie']['tmp_name'],$uploaded);
  5. echo "Operacja przebiegła pomyślnie";
  6. chmod($uploaded, 0777);
  7. }
  8. else {
  9. echo 'Błąd przy przesyłaniu danych!';
  10. }
  11. ?>
Spróbuj tak..
a tutaj masz napewno działający skrypt na upload plików:
http://www.webtips.pl/index.php?s=&sho...ost&p=20099

Pozdrawiam smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.