Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Implementacja WideImage, Zmiana wymiarów i kompresja obrazków wysyłanych na serwer
d0m1n1k_
post 25.11.2014, 19:24:45
Post #1





Grupa: Zarejestrowani
Postów: 208
Pomógł: 3
Dołączył: 13.07.2009
Skąd: Tarnów

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


Witam,

od dłuższego czasu próbuję przy okazji uploadu zdjęć dodać bibliotekę WideImage aby skalowała dodawane zdjęcia do dokładnie rozmiaru 800x600 z zachowaniem proporcji (dla zdjęć w innych proporcjach powinna "wyczarować" czarne tło i przeskalować obrazek tak aby dłuższa krawędź zawierała się w wyznaczonym rozmiarze).
Mimo moich starań i prób nie udało mi się tego dokonać.

Skrypt uploadu wygląda następująco:
  1. foreach ($_FILES['files']['name'] as $f => $name) {
  2. if ($_FILES['files']['error'][$f] == 4) {
  3. continue; // Pomin jesli sa bledy
  4. }
  5. if ($_FILES['files']['error'][$f] == 0) {
  6. if ($_FILES['files']['size'][$f] > $max_file_size) {
  7. $message[] = "$name jest za duzy!.";
  8. continue; // Nie dla duzych plikow
  9. }
  10. elseif( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) ){
  11. $message[] = "$name ma zly format";
  12. continue; // Nie dla nie zdjec
  13. }
  14. else{
  15. if($count <= 9){ //Działa to działamy. I działamy do 10 pliku włącznie.
  16. $rozszerzenie = pathinfo($_FILES["files"]["name"][$f], PATHINFO_EXTENSION);
  17. $newnamee = date('YmdHis') . md5(md5(rand(1,9999999))) . "." . $rozszerzenie;
  18. if(move_uploaded_file($_FILES['files']['tmp_name'][$f], $path.$newnamee))
  19. $newnamss[$count] = array($count => $newnamee);
  20. $count++;
  21. }
  22. }
  23. }
  24. }
  25. $dodajmy_fotorelacje = mysql_query("INSERT INTO `vhlphotocontrol`(`vpc_id`, `vpc_usr`, `vpc_vhlid`, `vpc_title`, `vpc_opinion`, `vpc_milage`, `vpc_sugestmlg`, `vpc_score`, `vpc_worth`, `vpc_photo0`, `vpc_photo1`, `vpc_photo2`, `vpc_photo3`, `vpc_photo4`, `vpc_photo5`, `vpc_photo6`, `vpc_photo7`, `vpc_photo8`, `vpc_photo9`, `vpc_addeddate`) VALUES (NULL, '$usrid', '$prawidlowy_id', '$fotorelacja_tytulrel', '$fotorelacja_twojinia', '$fotorelacja_przebieg', '$fotorelacja_sugebieg', '$fotorelacja_ocena', '$fotorelacjaczybysku', '" . $newnamss[0][0] . "', '" . $newnamss[1][1] . "', '" . $newnamss[2][2] . "', '" . $newnamss[3][3] . "', '" . $newnamss[4][4] . "', '" . $newnamss[5][5] . "', '" . $newnamss[6][6] . "', '" . $newnamss[7][7] . "', '" . $newnamss[8][8] . "', '" . $newnamss[9][9] . "', NOW())");
  26. echo "<center><font size=\"5\">Zdjecia dodane - brawo!!<br /></font></center>";


Sam skrypt uploadu działa poprawnie, ale WideImage jest dla mnie zwyczajnie nie do załapania.
Bardzo proszę o pomoc za którą będę dozgonnie wdzięczny, bo obecnie dodawane pliki są bez zmiany rozmiarów i tak jak teraz, wieczorami siedzę z fillezilla i fotosizer, ściągając wszystkie nowe zdjęcia, zmieniając ich proporcje i wysyłając nowe zmienione pliki na serwer na piechotę...

Oczywiście WideImage nie jest moim konkretnym wyborem, ale Turson go proponował.


--------------------
Prywatna koncepcja pasji - SprawdzAuto.info
Go to the top of the page
+Quote Post
kayman
post 25.11.2014, 19:35:25
Post #2





Grupa: Zarejestrowani
Postów: 556
Pomógł: 40
Dołączył: 20.07.2012
Skąd: Warszawa

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


poczytaj przykłady np. tu -> http://php.net/manual/en/function.getimagesize.php
Go to the top of the page
+Quote Post
Turson
post 25.11.2014, 20:13:58
Post #3





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Co do samego zmniejszania obrazka to: http://wideimage.sourceforge.net/examples/basic/
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 Wersja Lo-Fi Aktualny czas: 18.06.2025 - 15:24