Jak ładowac pliki o rozszerzeniu "jpeg"

0

Zauważyłem że moje formularze wstawiania fotek na stronę (form> input file) po kliknięci na przycisk ładowania z dysku otwierają okno dialogowe do wskazania pliku w którym pokazują tylko pliki o rozszerzeniach "jpg" a nie "jpeg" .

W definicji inputa miałem wpis akceptacji:

type="file" accept="image/jpeg"

i nie brało "jpeg" tylko "jpg". Potem rozszerzyłem go o:

type="file" accept="image/jpeg, image/jpg"

i nadal bez efektu - pliki "jpeg" nie sa widoczne w podstawowym okienku ładowania chyba że wybiorę "pokaż wszystkie". Ale to nie rozwiązuje sprawy bo nawet jak widze wszystkie rozszerzenia i załaduję plik "jpeg" to mój kod sprawdzający rozszerzenia przy ładowaniu i tak je odrzuci pomiomo tego że powinny przejść bo wygląda tak:

if( ($_FILES[$symbol_foty]['type'] =='image/jpeg')||($_FILES[$symbol_foty]['type'] =='image/jpg')) { }

Jak to zmodyfikować by "jpeg" był widziany i ładowany?

0

A po co Ci ten wpis akceptacji skoro i tak sprawdzasz to potem po stronie serwera?

0

Ten wpis w input powinien działać. Przynajmniej na Firefox 40 działa.
Odnośnie akceptacji po stronie serwera,

$_FILE['file']['type']

nie sprawdza rozszerzenia, tylko typ MIME.

0
 <form action="demo_form.asp">
  <input type="file" name="pic" accept="image/*">
  <input type="submit">
</form> 
0
  1. Nie sprawdzaj w PHP tego tak: $_FILES[$symbol_foty]['type'] --- ta informacja pochodzi od użytkownika i może być sfałszowana. Sprawdzaj rozszerzenie z nazwy otrzymanego pliku!

  2. Nie podawaj mime type przeglądarce, tylko podaj rozszerzenia. accept=".jpg,.jpeg"

0

Dzięki za odpowiedzi.
Do Dzek69: A czy jest zmienna z rozszerzeniem przesyłanego pliku w tablicy $_FILES[] , czy trzeba to sczytać z oryginalnej nazwy odcinając końcowe litery? Bo nie mogę znaleźć nic innego poza tym $_FILES[$symbol_foty]['type'] .

0

http://php.net/manual/en/function.pathinfo.php tu masz jak pobrać odpowiednie człony

0

Dzięki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1