Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][GD]Biblioteka GD nie działa w folderze bez chmod 777
Johnas
post
Post #1





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


  1. /* ---=== Zmieniamy rozmiar ===--- */
  2. $info = getimagesize("upload/avatar/$id.$extension");
  3.  
  4. $mime = $info['mime'];
  5.  
  6. switch ($mime) {
  7. case 'image/jpeg':
  8. $image_create_func = 'imagecreatefromjpeg';
  9. $image_save_func = 'imagejpeg';
  10. $new_image_ext = 'jpg';
  11. break;
  12.  
  13. case 'image/png':
  14. $image_create_func = 'imagecreatefrompng';
  15. $image_save_func = 'imagepng';
  16. $new_image_ext = 'png';
  17. break;
  18.  
  19. case 'image/gif':
  20. $image_create_func = 'imagecreatefromgif';
  21. $image_save_func = 'imagegif';
  22. $new_image_ext = 'gif';
  23. break;
  24.  
  25. default:
  26. throw Exception('Unknown image type.');
  27. }
  28.  
  29. $img = $image_create_func("upload/avatar/$id.$extension");
  30. list($width, $height) = getimagesize("upload/avatar/$id.$extension");
  31.  
  32. $newHeight = ($height / $width) * $avatarWidth;
  33. $tmp = @imagecreatetruecolor($newWidth, $newHeight)
  34. or die('Cannot Initialize new GD image stream');
  35. imagecopyresampled($tmp, $img, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
  36.  
  37. if (file_exists($id.$new_image_ext)) {
  38. unlink($id.$new_image_ext);
  39. }
  40. $image_save_func($tmp, "upload/avatar/$id-change.$new_image_ext");



Ten o to kod w momencie kiedy jest po za chmodami 777 nie chce mi działać, a w momencie kiedy go dam do katalogu gdzie są obrazki to pięknie działa... Sprawdziłem to tym kodem:
  1. <?php
  2. function resize($newWidth, $targetFile, $originalFile) {
  3.  
  4. $info = getimagesize($originalFile);
  5. $mime = $info['mime'];
  6.  
  7. switch ($mime) {
  8. case 'image/jpeg':
  9. $image_create_func = 'imagecreatefromjpeg';
  10. $image_save_func = 'imagejpeg';
  11. $new_image_ext = 'jpg';
  12. break;
  13.  
  14. case 'image/png':
  15. $image_create_func = 'imagecreatefrompng';
  16. $image_save_func = 'imagepng';
  17. $new_image_ext = 'png';
  18. break;
  19.  
  20. case 'image/gif':
  21. $image_create_func = 'imagecreatefromgif';
  22. $image_save_func = 'imagegif';
  23. $new_image_ext = 'gif';
  24. break;
  25.  
  26. default:
  27. throw Exception('Unknown image type.');
  28. }
  29.  
  30. $img = $image_create_func($originalFile);
  31. list($width, $height) = getimagesize($originalFile);
  32.  
  33. $newHeight = ($height / $width) * $newWidth;
  34. $tmp = imagecreatetruecolor($newWidth, $newHeight);
  35. imagecopyresampled($tmp, $img, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
  36.  
  37. if (file_exists($targetFile)) {
  38. unlink($targetFile);
  39. }
  40. $image_save_func($tmp, "$targetFile.$new_image_ext");
  41. }
  42.  
  43. $files = glob('*.{jpg,png,gif}', GLOB_BRACE);
  44. foreach($files as $file) {
  45. list($filename, $ext) = explode(".", $file);
  46. resize(100, $filename, $file);
  47. }
  48. ?>


Co jest nie tak ? Sypie się jak moja była w tym momencie:
  1. $tmp = imagecreatetruecolor($newWidth, $newHeight);


zwraca: "Cannot Initialize new GD image stream"

Pozdrawiam smile.gif


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
Go to the top of the page
+Quote Post
goartur
post
Post #2





Grupa: Zarejestrowani
Postów: 233
Pomógł: 27
Dołączył: 19.10.2014

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


Nie widze u ciebie

  1. imagepng($im);
  2. imagepng($im, 'nazwa.png');
  3. imagedestroy($im);
Go to the top of the page
+Quote Post
Johnas
post
Post #3





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


bo jest:
  1. $image_create_func
Jak mowilem dziala w katalogu gdzie sa obrazki a jak na index.php chce zmienic obrazki w upload to nie dziala juz


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
Go to the top of the page
+Quote Post
Pyton_000
post
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


porównaj uprawnienia (owner:group) dla index.php i katalogów oraz plików jpg
Go to the top of the page
+Quote Post
Johnas
post
Post #5





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


różnica jest w chmod ale nie chce dodawać do głownego katalogu chmod 777 bo to bez sensu i nie bezpieczne


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
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 Aktualny czas: 19.08.2025 - 17:57