Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]zapis przerobionego zdjęcia
Forum PHP.pl > Forum > Przedszkole
marcus753
Co w tym skrypcie jest nie tak questionmark.gif

  1. <?php
  2. header('Content-Type: image/jpeg');
  3. $img = imagecreatefromjpeg('http://img197.imageshack.us/img197/3273/85749826.jpg');
  4.  
  5. imagefilter($img, IMG_FILTER_NEGATE );
  6.  
  7. $img = imagejpeg($img, null, 100);
  8.  
  9.  
  10. $godzina = date("H:i:s");
  11. $data = date("d.m.Y");
  12. $name = "zdjecia/".$godzina."-".$data.".jpg";
  13.  
  14.  
  15. $name = basename($img);
  16.  
  17.  
  18.  
  19. $file = file_get_contents($img);
  20.  
  21.  
  22.  
  23. file_put_contents($name, $file);
  24.  
  25. echo 'Plik zostal zapisany';
  26.  
  27.  
  28. imagejpeg($img, null, 100);
  29.  
  30.  
  31.  
  32. ?>


Przerobiłem zdjęcie i chciałem go zapisać w folderze na serwerze folder ma chmod ustawiony zdjecie na stronie sie wyswietla a w folderze nic nie zapisuje ;(

sciana.gif sciana.gif

z gory dziekuje za pomoc
erix
A może zobacz, co zwraca i jakie parametry przyjmuje funkcja imagejpeg?

Poza tym, po co w ogóle image* do - tak naprawdę - zwykłego kopiowania pliku?

fakt, nie zauważyłem filtra
thek
A choćby po to erix, że używa filtra robiącego negatyw winksmiley.jpg Twój błąd marcus polega na zapisie. Użyj DWUKROTNIE imagejpeg POPRAWNIE. Raz by zapisać na dysku i drugi by posłać do przeglądarki. Na kij tu fileget(put)contents?
marcus753
thek chodzi ci o coś takiego ?

  1. <?php
  2. header('Content-Type: image/jpeg');
  3. $img = imagecreatefromjpeg('http://img197.imageshack.us/img197/3273/85749826.jpg');
  4.  
  5. imagefilter($img, IMG_FILTER_NEGATE );
  6.  
  7.  
  8. $godzina = date("H:i:s");
  9. $data = date("d.m.Y");
  10. $name = "zdjecia/".$godzina."-".$data.".jpg";
  11.  
  12. imagejpeg($img, null, 100);
  13.  
  14. file_put_contents($name, imagejpeg);
  15.  
  16. echo 'Plik zostal zapisany';
  17.  
  18. ?>


kod działa w połowie tzn zapisuje plik o podanej nazwie ale którego nie da się otworzyć wielkość 0 kb sciana.gif

no udało się

  1. imagejpeg ($img, $name);


Dopiero 7 kurs php łaskawie powiedział co tak naprawdę ta funkcja robi pff...

Dzięki wielkie party.gif
thek
To trzeba nie tylko czytać kursy, ale także manuala na stronie głównej php. Byś wiedział, że istnieje parametr odpowiedzialny za zapis na dysku i podajesz w nim ścieżkę do zapisu.
marcus753
thek a mam jeszcze małe pytanie czemu jak np. na końcu tego skryptu wstawił bym echo nie zostanie ono wyświetlone questionmark.gif szukalem odpowiedzi ale nigdzie nie moge jej znaleźć
thek
To ja zadam Ci inne pytanie...
Skoro na samym starcie piszesz w skrypcie "wyślij to jako plik obrazu typu jpeg" to co ma zrobić przeglądarka gdy napotka tekst? smile.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.