Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Tworzenie obrazka z kilku czesci, [PHP] biblioteki GD
saren_as
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


Witam! Mam takie cos:
CODE
  1. <title>Utworz wlasne zwierze!</title>
  2. </head>
  3.  
  4.  
  5. Najpierw muszisz wybrac glowe zwierzecia.
  6.  
  7. <form name="form1" method="post" action="animal2.php" enctype="multipart/form-data">
  8. <table border="0" cellpadding="5">
  9. <tr>
  10. <td><img src="images/cowhead.jpg"></td>
  11. <td><input type="radio" value="cowhead" name="head"></td>
  12. </tr>
  13.  
  14. <tr>
  15. <td><img src="images/pighead.jpg"></td>
  16. <td><input type="radio" value="pighead" name="head"></td>
  17. </tr>
  18.  
  19. <tr>
  20. <td><img src="images/giraffhead.jpg"></td>
  21. <td><input type="radio" value="giraffhead" name="head"></td>
  22. </tr>
  23.  
  24. <tr>
  25. <td><img src="images/elephanthead.jpg"></td>
  26. <td><input type="radio" value="elephanthead" name="head"></td>
  27. </tr>
  28. </table>
  29.  
  30. <p align='center'><input type="submit" name="Submit" value="Wybierz tulow"></p>
  31. </form>
  32. </body>
  33. </html>


oraz

[codebox]
  1. <?php $head=$_POST['head'];
  2. ?>
  3.  
  4. <title>Utworz wlasne zwierze!</title>
  5. </head>
  6.  
  7. Nastepnie muszisz wybrac tulow zwierzecia.
  8.  
  9. <form name="form1" method="post" action="animal3.php">
  10. <table border="0" cellpadding="5">
  11. <tr>
  12. <td><img src="images/cowbody.jpg"></td>
  13. <td><input type="radio" value="cowbody" name="body"></td>
  14. </tr>
  15.  
  16. <tr>
  17. <td><img src="images/pigbody.jpg"></td>
  18. <td><input type="radio" value="pigbody" name="body"></td>
  19. </tr>
  20.  
  21. <tr>
  22. <td><img src="images/giraffbody.jpg"></td>
  23. <td><input type="radio" value="giraffbody" name="body"></td>
  24. </tr>
  25.  
  26. <tr>
  27. <td><img src="images/elephantbody.jpg"></td>
  28. <td><input type="radio" value="elephantbody" name="body"></td>
  29. </tr>
  30. </table>
  31. <input type='hidden' name="head" value="<?php echo $head; ?>">
  32.  
  33. <p align='center'><input type="submit" name="Submit" value="Wybierz ogon"></p>
  34. </form>
  35. </body>
  36. </html>


oraz

[codebox]
  1. <?php $head=$_POST['head'];
  2. $body=$_POST['body'];
  3. ?>
  4.  
  5. <title>Utworz wlasne zwierze!</title>
  6. </head>
  7.  
  8. W tym kroku muszisz wybrac ogon zwierzecia.
  9.  
  10. <form name="form1" method="post" action="animalcreate.php">
  11. <table border="0" cellpadding="5">
  12. <tr>
  13. <td><img src="images/cowtail.jpg"></td>
  14. <td><input type="radio" value="cowtail" name="tail"></td>
  15. </tr>
  16.  
  17. <tr>
  18. <td><img src="images/pigtail.jpg"></td>
  19. <td><input type="radio" value="pigtail" name="tail"></td>
  20. </tr>
  21.  
  22. <tr>
  23. <td><img src="images/girafftail.jpg"></td>
  24. <td><input type="radio" value="girafftail" name="tail"></td>
  25. </tr>
  26.  
  27. <tr>
  28. <td><img src="images/elephanttail.jpg"></td>
  29. <td><input type="radio" value="elephanttail" name="tail"></td>
  30. </tr>
  31. </table>
  32. <input type='hidden' name="head" value="<?php echo $head; ?>">
  33. <input type='hidden' name="body" value="<?php echo $body; ?>">
  34.  
  35. <p align='center'><input type="submit" name="Submit" value="Stworz zwierze!"></p>
  36. </form>
  37. </body>
  38. </html>


oraz

[codebox]
  1. <?php
  2. header ("Content-typ: image/jpeg");
  3. $head=$_POST['head'];
  4. $body=$_POST['body'];
  5. $tail=$_POST['tail'];
  6.  
  7. $ImageDir=":/Program Files/Apache Software Foundation/Apache2.2/htdocs/moviesite/roz7/images/";
  8.  
  9. $head_file = $ImageDir . $head . ".jpg";
  10. $body_file = $ImageDir . $body . ".jpg";
  11. $tail_file = $ImageDir . $tail . ".jpg";
  12.  
  13.  
  14. $head_image = imagecreatefromjpeg("$head_file");
  15. $body_image = imagecreatefromjpeg("$body_file");
  16. $tail_image = imagecreatefromjpeg("$tail_file");
  17.  
  18. //kazdy ze stosowanych obrazow ma 100 pikseli szerokosci i 200 wysokosci
  19. //oryginalne obrazy zostaly podzielone na trzy czesci w poziomie
  20. $new_animal = imagecreatetruecolor(300,200);
  21.  
  22. //doloczenie do pustego obrazu glowy zwierzecia
  23. imagecopymerge($new_animal, $head_image, 0, 0, 0, 0, 100, 200, 100);
  24.  
  25. //doloczenie do obrazu tulowia zwierzecia
  26. imagecopymerge($new_animal, $body_image, 100, 0, 0, 0, 100, 200, 100);
  27.  
  28. //doloczenie do obrazu ogona zwierzecia
  29. imagecopymerge($new_animal, $tail_image, 200, 0, 0, 0, 100, 200, 100);
  30.  
  31.  
  32. imagejpeg($image);
  33. ?>


Ma to za zadanie wyswietlic polaczonych w jedna calosc kilka obrazkow. Przechodzac przez kolejne strony zaznaczam, ktora czesc chce przeslac dalej lecz w momencie, gdy powinien sie wyswietlic caly obrazek widoczny jest tylko adres strony na ktorej mial sie pojawic ow obrazek. Nie wiem, ale moze jest to spowodowane linkami do katalogow. Wszystkie czesc obrazkow trzymam w
C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\moviesite\roz7\images pod odpowiednimi nazwami np cowbody.jpg. GD mam zainstalowane + PHP 5.2.6 + Apache 2.2.9. Mozecie mi pomoc, gdzie mam szukac bledu? Jest to zadanie z ksiazki z 2005 roku wiec moze juz cos jest nie aktualne. Czekam na podpowiedzi. W logach apache mam:
[codebox]
PHP Warning: imagecreatefromjpeg() [<a href='function.imagecreatefromjpeg'>function.imagecreatefromjpeg</a>]: gd-jpeg: JPEG library reports unrecoverable error: in C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\moviesite\\roz7\\animalcreate.php on line 14, referer: http://localhost/moviesite/roz7/animal3.php
Not a JPEG file: starts with 0x42 0x4d
[Thu Sep 25 10:41:54 2008] [error] [client 127.0.0.1] PHP Warning: imagecreatefromjpeg() [<a href='function.imagecreatefromjpeg'>function.imagecreatefromjpeg</a>]: 'images/cowhead.jpg' is not a valid JPEG file in C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\moviesite\\roz7\\animalcreate.php on line 14, referer: http://localhost/moviesite/roz7/animal3.php


do moderatora: Nie moglem edytowac bo wywala blad.

Nie dodalem waznej informacji, a mianowicie ze blad ten tyczy sie ostatniego skryptu, a linia tak jak podane.

1 skrypt: animal1.html
2 skrypt: animal2.php
3 skrypt: animal3.php
4 skrypt: animalcreate.php
Go to the top of the page
+Quote Post
kefir1989
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 1
Dołączył: 1.11.2007

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


Skoro
Cytat
'images/cowhead.jpg' is not a valid JPEG file

to może coś z plikiem jest nie tak. Podmień plik i sprawdź.


--------------------
Go to the top of the page
+Quote Post
saren_as
post
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


Wszystkie .jpg sa chyba poprawne, tzn otwieram je i moge je normalnie ogladac. Kazdy z nich ma 100px szerokoscie i 200px wysokosci.

Zauwazylem literowke w ktorej brakuje literki "C" podczas wyboru sciezki do plikow - normalnie jest ona na swoim miejscu.

W kazdym badz razie dzieki za checi i czekam na dalsze podpowiedzi!
Go to the top of the page
+Quote Post
sowiq
post
Post #4





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Zapisz dla testu obrazki do GIF i użyj na próbę imagecreatefromgif() - może masz coś źle z obrazkiem, np. zamiast RGB - CMYK, albo coś z paletą kolorów.
Go to the top of the page
+Quote Post
saren_as
post
Post #5





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


Witam!
Oczywiscie jak zwykle problem byl mniejszy niz mial byc. Mianowicie ostatnia zmienna byla zle nazwana
imagejpeg($image);
zamiast
imagejpeg($new_animal);
Bledy w dzienniku sa dalej, ale nie wplywaja znacznie na efekt (zamienilem na *GIF i bylo bez bledow wiec wczesniejsza rada byla pomocna)


dziala ... mozna zamknac ... dzieki za pomoc !
saren_as
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 Aktualny czas: 19.08.2025 - 20:10