Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Upload plików + watermark
Forum PHP.pl > Forum > Przedszkole
emajl22
Witam,

próbuję napisać upload plików, który automatycznie doda znak wodny (zdjęcie) do wrzucanego obrazka.

Mam coś takiego:

  1. <?php
  2.  
  3.  
  4. if ( $_POST['upload'] ) {
  5.  
  6. $file_tmp = $_FILES['file']['tmp_name'];
  7. $file_name = $_FILES['file']['name'];
  8.  
  9. $watermark = imagecreatefromgif('2d.gif');
  10. $image = imagecreatefromgif($file_name);
  11.  
  12. var_dump($watermark);
  13. var_dump($image);
  14.  
  15. $cos = imagecopymerge($image, $watermark, 30, 30, 0, 0, 200, 147, 100);
  16. move_uploaded_file($cos, "upload/$file_name");
  17.  
  18. }
  19.  
  20. ?>
  21.  
  22. <form action="" method="post" ENCTYPE="multipart/form-data">
  23. Zdjęcie: <input type="file" name="file"><br /><br />
  24. <input type="submit" value="Upload" name="upload">
  25. </form>


Skrypt ani nie przesyła pliku, ani nie dodaje znaku wodnego. Co może być przyczyną?
Próbowałem także użyć funkcji imagecopy(), ale jest dosłownie to samo.
tehaha
trochę tu namieszałeś...
tutaj masz tutorial dokładnie na to co próbujesz zrobić http://blog.phpmoz.org/php-tutorials-autom...mage-on-upload/
tu jeszcze inny http://articles.sitepoint.com/article/watermark-images-php

ps. jeżeli chcesz sprawdzić czy plik jest przesyłany to zrób
  1. print_r($_FILES)


a tu masz funkcje do sprawdzania czy plik został przesłany http://php.net/manual/en/function.is-uploaded-file.php, daj to zamiast $_POST['upload']
darko
Hej
Dodam tylko, że najłatwiej i najszybciej będzie skorzystać z gotowej biblioteki do nakładania znaków wodnych, np. tej.
emajl22
dziękować Wam.
grzegorz_g
zasugerowałem się odpowiedzią "darko" i wybrałem phpthumb.gxdlabs.com

ma teraz jednak taki problem, może ktoś miał podobny i napisze czy da się go jakoś ominąć

bo przed dodaniem znaku wodnego najpierw kadruje fotkę a później dodaje znak wodny, jednak przy zdjęciach mniejszych od rozmiarów kadrowania , znaku wodnego nie ma sad.gif

  1. $thumb->cropFromCenter(250, 250);
  2. $thumb->createWatermark('fun.png','rb', 10);
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.