Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Tworzenie miniatur z użyciem GD
Forum PHP.pl > Forum > Przedszkole
Piccolo
Potrzebuję zrobić zmniejszone pliki z plików wysyłanych z formularza. Po poszukiwaniach na różnych forach w necie stworzyłem taki oto kod:

  1. $plik = $_POST['plik'];
  2.  
  3. $system=explode(".",$plik);
  4. if (preg_match("/jpg|jpeg/",$system[1])){$img=imagecreatefromjpeg($plik);}
  5. $width = imagesx($img);
  6. $height = imagesy($img);
  7. $skala_full = 700/$width;
  8. $skala_mini = 240/$width;
  9. $width_full = $width * $skala_full;
  10. $height_full = $height * $skala_full;
  11. $width_mini = $width_full * $skala_mini;
  12. $height_mini = $height_full * $skala_mini;
  13. $img_full = imagecreatetruecolor($width_full, $height_full);
  14. $img_mini = imagecreatetruecolor($width_mini, $height_mini);
  15. imagecopyresampled($img_full, $img, 0, 0, 0, 0, $width_full , $height_full, $width, $height);
  16. imagejpeg($img_full, "../www/new/images/news/".$plik, 85);
  17. imagecopyresampled($img_mini, $img_full, 0, 0, 0, 0, $width_mini , $height_mini, $width_full, $height_full);
  18. imagejpeg($img_mini, "../www/new/images/news/tn/".$plik, 85);
  19. imagedestroy($img);
  20. imagedestroy($img_full);
  21. imagedestroy($img_mini);


Niestety uzyskuję tego typu komunikaty błędów:

Warning: imagesx(): supplied argument is not a valid Image resource in /admin/convert.php on line 5
Warning: imagesy(): supplied argument is not a valid Image resource in /admin/convert.php on line 6
Warning: Division by zero in /admin/convert.php on line 7
Warning: Division by zero in /admin/convert.php on line 8
.....



Próbowałem już nawet zmieniać:
  1. $plik = $_POST['plik'];

na
  1. $plik = $_FILES['plik'];

ale nic to nie zmienia. Może błąd tkwi w przesyłaniu pliku z formularza do skryptu, nie wiem co_jest.gif.
Prosze o pomoc
thek
Na początek to lepiej poczytaj sobie jak odbierać pliki z formularza... MUSISZ mieć obsłużone $_FILES i lepiej popatrz co ma przechodzić jako parametr do imagecreatefrom*. Inna sprawa, że enctype formularza możesz mieć jeszcze zły. Nie zapomnij, że tam musi być informacja, iż polecą nie tylko dane, ale i pliki.
Piccolo
Wielkie dzięki za naprowadzenie, już chodzi smile.gif Jak widzę źle odbierałem dane z formularza (formularz był OK), ale pogrzebałem i teraz jestem mądrzejszym "PRZEDSZKOLAKIEM" w dziedzinie PHP biggrin.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.