Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]miniatura zdjęcia
mbb
post 11.01.2014, 23:42:16
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 8.12.2013

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


wyskakuje mi błąd:

Warning: imagedestroy() expects parameter 1 to be resource, integer given in... on line 55

dodatkowo nie zawsze dodaje mi obrazek z rozszerzeniem .jpg
a tu kod:
  1. <?php
  2. if(isset($_POST['submit']))
  3. {
  4. $allowed = array ('image/pjpeg', 'image/JPEG', 'image/JPG', 'image/jpeg', 'image/jpg', 'image/X-PNG', 'image/PNG', 'image/png', 'image/x-png', 'image/gif');
  5. if(in_array($_FILES['userfile']['type'],$allowed))
  6. {
  7. $url='../rsah/upload/';
  8. $turl='../rsah/thumb/';
  9. $tmpName=$_FILES['userfile']['tmp_name'];
  10. $name=$_FILES['userfile']['name'];
  11. //do miniaturek
  12. static $maxWidth=150;
  13. static $maxHeight=150;
  14.  
  15. list($sHeight,$sWidth,$sType)=getimagesize($tmpName);
  16.  
  17. switch($sType)
  18. {
  19. case IMAGETYPE_GIF:
  20. $gType=imagecreatefromgif($tmpName);
  21. break;
  22. case IMAGETYPE_PNG:
  23. $gType=imagecreatefrompng($tmpName);
  24. break;
  25. case IMAGETYPE_JPEG:
  26. $gType=imagecreatefromjpeg($tmpName);
  27. break;
  28. default:
  29. echo 'co tam?';
  30. }
  31.  
  32. $sourceRatio=$sWidth/$sHeight;
  33. $thumbnailRatio=$maxWidth/$maxHeight;
  34.  
  35. if($sWidth<=$maxWidth && $sHeight<=$maxHeight)
  36. {
  37. $tWidth=$sWidth;
  38. $tHeight=$sHeight;
  39. }
  40. else if ($thumbnailRatio>$sourceRatio)
  41. {
  42. $tWidth= (int) ($maxHeight * $sourceRatio);
  43. $tHeight= $maxHeight;
  44. }
  45. else
  46. {
  47. $tWidth= $maxWidth;
  48. $tHeight= (int) ($maxWidth/$sourceRatio);
  49. }
  50.  
  51. $thumbnailImage=imagecreatetruecolor($tWidth,$tHeight);
  52. imagecopyresampled($thumbnailImage,$gType,0,0,0,0,$tWidth,$tHeight,$sWidth,$sHeight);
  53. imagejpeg($thumbnailImage,$turl.$name,90);
  54. imagedestroy($sType);
  55. imagedestroy($thumbnailImage);
  56.  
  57. move_uploaded_file($tmpName,$url.$name);
  58.  
  59. echo 'Wrzucono';
  60. }
  61. else
  62. {
  63. echo 'Bledny typ';
  64. }
  65. }
  66. else
  67. {
  68. echo 'wrzuc cos';
  69. }
  70. ?>


Ten post edytował mbb 11.01.2014, 23:46:15
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Kshyhoo
post 11.01.2014, 23:45:23
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Obrabiasz $gType a chcesz zwolnić imagedestroy($sType);


--------------------
Go to the top of the page
+Quote Post
mbb
post 11.01.2014, 23:51:38
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 8.12.2013

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


ok teraz nie wyskakuje błąd, ale jak chce wrzucić jakiś png, jpg to czasem mi wrzuca innym razem nie, o co chodzi?
Go to the top of the page
+Quote Post
Kshyhoo
post 11.01.2014, 23:55:10
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Z GD tak bywa. Może ustawienia serwera, może rozmiar pliku. Trzeba szukać. Za mało danych...


--------------------
Go to the top of the page
+Quote Post
mbb
post 12.01.2014, 00:01:58
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 8.12.2013

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


jest coś mniej awaryjnego niż gd?
Go to the top of the page
+Quote Post
nospor
post 12.01.2014, 11:05:04
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To wcale nie musi byc wina GD.... na wrzucanie obrazkow masz nalozony warunek, wiec poprostu moze on nie byc spelniony. Banalne, prawda?

Wystarczy, ze dla obrazkow dla ktorych ci nie wrzuca, sprawdzisz co zawierają kluczowe zmienne a znajdziesz rozwiazanie


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 01:33