Динамическое превью

  1. <?php
  2.     $image="no_image.jpeg";
  3.     $width="128";
  4. if(isset($_GET['img'])) {
  5.     $image=$_GET['img'];
  6. }
  7. if(!is_file($image)) {
  8. $image="no_image.jpeg";
  9. }
  10. if (isset($_GET['w'])) {
  11.     $width=$_GET['w'];
  12. }
  13. $size = getimagesize($image);
  14. $big = imagecreatefromjpeg($image);
  15.         if ($size[0]>$size[1]){
  16.     $ratio = $size[0]/$width;
  17.                 } else {
  18.     $ratio = $size[1]/$width;
  19.     }
  20. $X = round($size[0]/$ratio);
  21. $Y = round($size[1]/$ratio);
  22. $priv = imagecreatetruecolor($X, $Y);
  23. imagecopyresampled(
  24.     $priv,$big,0,0,0,0,$X,$Y,$size[0],$size[1]);
  25. header ("Content-type: image/jpeg");
  26. imageJpeg ($priv);
  27. imageDestroy ($big);
  28. imageDestroy ($priv);
  29. imageDestroy ($image);
  30. ?>
Фаил no_image.jpeg то что будите отдавать браузеру при ошибке.
Width 128 ширина по умалчанию. Ставим под свои требования. Тег для кода
  1. <img src="prewiev.php?img=test.jpg&w=64">
это пример. Если файл будет не prewiev.php пишим свое имя.

Реклама

Мы в соцсетях

tw tg yt gt