Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload avatara
Forum PHP.pl > Forum > PHP
lubudubu1010
Witam, mam problem z kodem:

  1. $pathgif = "upload/foto/" . $r['id'] . ".gif";
  2. $pathjpg = "upload/foto/" . $r['id'] . ".jpg";
  3. $pathjpeg = "upload/foto/" . $r['id'] . ".jpeg";
  4. $pathpng = "upload/foto/" . $r['id'] . ".png";
  5. if(file_exists($pathgif)){
  6. echo imageResize($pathgif, 180, 180);
  7. }elseif(file_exists($pathjpg)){
  8. echo imageResize($pathjpg, 180, 180);
  9. }elseif(file_exists($pathjpeg)){
  10. echo imageResize($pathjpeg, 180, 180);
  11. }elseif(file_exists($pathpng)){
  12. echo imageResize($pathpng, 180, 180);
  13. }else{
  14. echo imageResize('upload/foto/quest.jpg', 180, 180);
  15. }


Wgrywanie zdjęć działą dobrze, tylko problemem jest, że zdjęcie wyświetla tylko z rozszerzeniem .gif.
Png, jpg już niestety nie jest wyświetlane.

Z góry dzięki za pomoc.
nospor
A skad mamy wiedziec jak wyglada funkcja imageResize?
lubudubu1010
już podaje:

  1. function imageResize($sImageLocation, $iMaxWidth = 0, $iMaxHeight = 0, $bReturnArray = false) {
  2.  
  3. $aImageSize = getImageSize($sImageLocation);
  4.  
  5. if ($aImageSize[0] > $iMaxWidth && $iMaxWidth != 0) {
  6. $iNewWidth = $iMaxWidth;
  7. $iNewHeight = ($aImageSize[1] / ($aImageSize[0] / $iMaxWidth));
  8. }
  9. if ((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]) > $iMaxHeight && $iMaxHeight != 0) {
  10. $iNewWidth = ((isset($iNewWidth) ? $iNewWidth : $aImageSize[0]) / ((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]) / $iMaxHeight));
  11. $iNewHeight = $iMaxHeight;
  12. }
  13.  
  14. if ($bReturnArray === true) {
  15. return array(
  16. 'image' => $sImageLocation,
  17. 'width' => floor((isset($iNewWidth) ? $iNewWidth : $aImageSize[0])),
  18. 'height' => floor((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]))
  19. );
  20. } else {
  21. return '<img src="'.$sImageLocation.'" width="'.floor((isset($iNewWidth) ? $iNewWidth : $aImageSize[0])).'" height="'.floor((isset($iNewHeight) ? $iNewHeight : $aImageSize[1])).'" alt="" />';
  22. }
  23.  
  24. }
  25.  
  26. function imageResizee($sImageLocation, $iMaxWidth = 0, $iMaxHeight = 0, $title = "") {
  27.  
  28. $aImageSize = getImageSize($sImageLocation);
  29.  
  30. if ($aImageSize[0] > $iMaxWidth && $iMaxWidth != 0) {
  31. $iNewWidth = $iMaxWidth;
  32. $iNewHeight = ($aImageSize[1] / ($aImageSize[0] / $iMaxWidth));
  33. }
  34.  
  35. if ((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]) > $iMaxHeight && $iMaxHeight != 0) {
  36. $iNewWidth = ((isset($iNewWidth) ? $iNewWidth : $aImageSize[0]) / ((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]) / $iMaxHeight));
  37. $iNewHeight = $iMaxHeight;
  38. }
  39.  
  40. if ($bReturnArray === true) {
  41. return array(
  42. 'image' => $sImageLocation,
  43. 'width' => floor((isset($iNewWidth) ? $iNewWidth : $aImageSize[0])),
  44. 'height' => floor((isset($iNewHeight) ? $iNewHeight : $aImageSize[1]))
  45. );
  46. } else {
  47. return '<a href="' . $sImageLocation . '" rel="lightbox[test]" title="' . $title . '"><img src="'.$sImageLocation.'" width="'.floor((isset($iNewWidth) ? $iNewWidth : $aImageSize[0])).'" height="'.floor((isset($iNewHeight) ? $iNewHeight : $aImageSize[1])).'" border="0" alt="" /></a>';
  48. }
  49.  
  50. }
nospor
No dobra, ale patrzyles czy on ci wchodzi do tych glownych IFow?
Jesli wchodzi to generuje ci <IMG SRC ? Sprawdzales to, czy o wszystko mamy się po kolei Ciebie wypytywac i marnowac czas?
fate
Wiesz ze jak bedziesz mial plik grafika.gif i plik grafika.jpg to zawsze pokaże Ci tylko gifa?

w GET musisz przemycac tez rozszerzenie i puscic to przez:
echo imageResize($path, 180, 180);

bez żadnych ifów
lubudubu1010
@nospor nie bardzo mam możliwosć użycia debuggera
@fate gdy jest sam plik 123.jpg to i tak go nie pokazuję i wlasnie nie rozumiem czemu to tak sie zachowuje w tych ifach.
Kod do imageResize jest stad: http://www.sitemasters.be/scripts/1/23/109..._hoogte_breedte
fate
Debuger masz wbudowany w przegladarke robisz prawym->zbadaj, a jak siedzisz na IE6 to zajrzyj w źródło strony
zdumpuj $r['id']
lubudubu1010
Dzięki serdeczne za szybką pomoc, jakimś cudem zadziałało stworzenie tylko jednej scieżki i teraz wszystko śmiga.

Pozdrawiam.
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.