Czy mogę przesyłać zdjęcia do typu pliku z numeru $_FILES
? Czy muszę ponownie sprawdzić przy pomocy exif_imagetype()
?
Odpowiedz
typ mime pliku, jeśli przeglądarka nie dostarczyło tych informacji. Przykładem może być "image/gif". Ten typ MIME nie jest jednak sprawdzany po stronie PHP i dlatego nie przyjmuje jego wartości za pewnik.
Zawsze używam następną funkcję, aby sprawdzić prawidłowe obrazy:
function Check_Image($Filename) {
if ($Check_Image = @getimagesize($Filename)) {
return TRUE;
}
return FALSE;
}
Nigdy nie ufaj wszystko, co przychodzi z zewnątrz, szczególnie przesyłanie plików!
Sprawdź rozmiar, lokalizację, mime/typ, rozszerzenie i wszystko, co możesz sprawdzić!
Ale czy ten typ pochodzi z zewnątrz? Czy jest to coś dodane przez php? – HappyDeveloper
Przeglądarka zapewnia to, nie ufaj temu. –
@Wesley van Opdorp się zgodził, sprawdź też * zawartość *, jeśli możesz. – Cheekysoft
Nie, nie można ufać temu, ponieważ this information is provided by the client browser.
$_FILES['userfile']['type']
typ mime pliku, jeśli przeglądarka przekazała te informacje. Przykładem może być "image/gif". Ten typ mime nie jest jednak sprawdzany po stronie PHP i dlatego nie przyjmuje wartości .
Nie można nie ufać zmiennej $_FILES['userfile']['type']
. Wartość obecna w tej zmiennej może być podrobiona. Można użyć finfo_file
wykryć typ pliku bardziej wiarygodny:
$finfo = finfo_open(FILEINFO_MIME_TYPE); // we need mime type
echo finfo_file($finfo, "/path/to/uploaded/file"); // displays something like image/gif
finfo_close($finfo);
Funkcje te wymagają PHP> = 5.3.0.
- 1. Jak mogę użyć getimagesize() z $ _FILES ['']?
- 2. Jak mogę ufać własnoręcznie podpisanemu certyfikatowi z aplikacji elektronowej?
- 3. $ _FILES Empty podczas przesyłania
- 4. Jak zapobiec jednemu plikowi z przekierowania .htaccess?
- 5. $ _FILES Nie działa?
- 6. $ _FILES ["plik"] ["rozmiar"] zwraca 0?
- 7. Yii, zapisywanie obrazu z $ _FILES, ale bez używania modeli
- 8. Jak ufać samopodpisanemu certyfikatowi w aplikacji sklepu z systemem Windows
- 9. Kiedy zostanie usunięte $ _FILES ['file'] ['tmp_name']?
- 10. Nie można ufać własnoręcznie podpisanemu certyfikatowi na iphone
- 11. Czy mogę używać postów jQuery z przesyłanymi obrazami?
- 12. Czy jest możliwe uzyskanie $ _FILES ["inputID"] ["tmp_name"] z pola pliku przy użyciu javascript?
- 13. Dlaczego nie mogę ufać GUID wygenerowanemu przez klienta? Czy traktowanie PK jako złożonego klienta-GUID i GUID serwera rozwiązuje cokolwiek?
- 14. Jak nadać priorytet plikowi jar w ścieżce zaćmieniowej classpath?
- 15. PHP $ _FILES ['plik'] ['tmp_name']: Jak zachować nazwę pliku i rozszerzenie?
- 16. wersja RVM [1.19.1] wymaga zmiany do .rvmrc plikowi
- 17. Czy mogę użyć wielu "z"?
- 18. Czy mogę używać C++ 11 z Xcode?
- 19. Czy mogę uzyskać PTypeInfo z ciągu?
- 20. Czy mogę połączyć MSVCRT statycznie z mingw?
- 21. Czy mogę wyzwolić formularz przesłany z kontrolera?
- 22. Czy mogę zapobiec zdarzeniu związanemu z rozmyciem?
- 23. Czy mogę używać Tensorboard z Google Colab?
- 24. Czy mogę używać atrybutów z klasami anonimowymi?
- 25. Czy mogę uzyskać rodzeństwo z DOMDocument PHP?
- 26. Czy mogę to zrobić z obiektami klasy?
- 27. Czy mogę używać JQuery Mobile z EmberJS?
- 28. Czy mogę pobrać IDFA iOS6 z Javascript?
- 29. Czy mogę podsłuchać zdarzenia dotykowe z Androidem?
- 30. Czy mogę używać nHibernate z monotouch?
idealne, dzięki – HappyDeveloper