Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Rozpoznanie typu obrazka - jpg, jpeg, gif.
Forum PHP.pl > Forum > Przedszkole
mariusz g
Witam exclamation.gif!


Mam taki skrypt i nie rozpoznaje jpeg.
Nie mam pojęcia dlaczego.
JPG i GIF działa.

Proszę o pomoc


  1. <form action="index.php" method="post" enctype="multipart/form-data">
  2. <input type="file" name="name1" />
  3. <input type="submit" />
  4. </form>


  1. <?
  2.  
  3.  
  4. $plik_nazwa1 = $_FILES['name1']['name']; 
  5.  
  6.  
  7. if(substr($plik_nazwa1, -4, 4) == '.jpg')
  8.  {
  9. print"To jest jpg";
  10. };
  11.  
  12. if(substr($plik_nazwa1, -4, 4) == '.gif')
  13.  {
  14. print"To jest gif";
  15. };
  16.  
  17. if(substr($plik_nazwa1, -4, 4) == '.jpeg')
  18.  {
  19. print"To jest jpeg";
  20. };
  21.  
  22. ?>



-------------------------
wątek już trwa więc nie zamknę
tag poprawiłem ostrzeżenie dla autora też
~Cienki1980
mike
Podpowiem Ci.
.gif to cztery znaki ale .jpeg to już pięć znaków.
arecki
Poza tym to lepiej sprawdzaj typ mime przez $_FILES['name1']['type'] a nie substr.
mike
Cytat(arecki @ 18.03.2007, 14:24:45 ) *
Poza tym to lepiej sprawdzaj typ mime przez $_FILES['name1']['type'] a nie substr.
To akurat nie ma żadnej różnicy smile.gif
Poza tym, że nie musisz wywołać funkcji substr(), rezultat jest tak samo wiarygodny smile.gif
arecki
No faktycznie racja. To może raczej mime_content_type() albo getimagesize().
Istalacar
Witam
Ja to rozwiązałem (dla plików znajdujących się na serverze, nie uploadowanych i nie posiadających rozszerzenia w tan sposób:
  1. <?
  2. $info = getimagesize("http://www.adres.do/obrazka.rozszerzenie");
  3. $width=$info[0];
  4. $height=$info[1];
  5. header("Content-type: ".$info["mime"]);
  6. switch ($info[2])
  7. {
  8. case 1:
  9. $obraz=@imagecreatefromgif("http://www.adres.do/obrazka.rozszerzenie");
  10. case 2:
  11. $obraz=@imagecreatefromjpeg("http://www.adres.do/obrazka.rozszerzenie");
  12. break;
  13. case 3:
  14. $obraz=@imagecreatefrompng("http://www.adres.do/obrazka.rozszerzenie");
  15. break;
  16. }
  17. ?>

Może się mylę, ale wydaje mi się że jpeg i jpg to jest to samo, tyle że po prostu posiadają 2 różne rozszerzenia.
Pozdrawiam
Istalacar
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.