Posso fidarmi del tipo di file da $_FILES
durante il caricamento delle immagini? O devo ricontrollare con exif_imagetype()
?
risposta
Dal documentation:
Il tipo MIME del file, se il browser fornito tali informazioni. Un esempio potrebbe essere "image/gif". Questo tipo di mime tuttavia non è controllato sul lato PHP e quindi non dà per scontato il suo valore.
Io uso sempre la funzione successiva per controllare le immagini valide:
function Check_Image($Filename) {
if ($Check_Image = @getimagesize($Filename)) {
return TRUE;
}
return FALSE;
}
Mai fidarsi di tutto ciò che viene dal di fuori, soprattutto upload di file!
Controlla la dimensione, la posizione, il mimo/tipo, l'estensione e qualsiasi altra cosa che puoi controllare!
Ma il tipo viene dall'esterno? O è qualcosa aggiunto da php? – HappyDeveloper
Il browser lo fornisce, non fidarti di esso. –
@Wesley van Opdorp ha accettato, controlla anche il * contenuto * se puoi. – Cheekysoft
No, non ci si può fidare perché this information is provided by the client browser.
$_FILES['userfile']['type']
Il tipo MIME del file, se il browser fornito queste informazioni. Un esempio potrebbe essere "image/gif". Questo tipo di mimo tuttavia non è controllato sul lato PHP e pertanto non assume il valore per il suo valore.
No, non ci si può fidare della variabile $_FILES['userfile']['type']
. Il valore presente in questa variabile potrebbe essere falsificato. È possibile utilizzare finfo_file
per rilevare il tipo di file in modo più affidabile:
$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);
Queste funzioni richiedono PHP> = 5.3.0.
- 1. PHP: $ _FILES [ "file"] [ "tipo"] è inutile
- 2. Come posso fidarmi di Git merge?
- 3. $ _FILES ["file"] ["dimensione"] restituisce 0?
- 4. PHP $ _FILES di file multipli problema caricando
- 5. $ _FILES vuoto dopo l'invio del modulo
- 6. Quando verranno rimossi $ _FILES ['file'] ['tmp_name']?
- 7. $ _FILES non funziona?
- 8. Come posso impostare l'anteprima del file video, selezionando da tipo di input = 'file'
- 9. Yii, salvando un'immagine da $ _FILES, ma senza utilizzare i modelli
- 10. auto da URI percorso del file di tipo in C#
- 11. $ _FILES vuota durante il caricamento
- 12. Come posso ottenere il contenuto del file caricato in PHP?
- 13. Modifica autorizzazioni del file caricato da PHP
- 14. Come limitare la dimensione del file di tipo di caricamento file in PHP?
- 15. Posso fidarmi dell'ordinanza di un dict di rimanere uguale ogni volta che viene ripetuto?
- 16. Puoi fidarti della dimensione del file data dall'array $ _FILES in PHP?
- 17. E 'possibile ottenere $ _FILES ["inputID"] ["tmp_name"] da un campo file usando javascript?
- 18. Controllare tipo di file immagine e la taglia prima di caricamento di file in php
- 19. $ _FILES campo 'tmp_name' non ha valore sull'estensione .JPG
- 20. dove posso trovare questo tipo di esercizi da risolvere?
- 21. PHP $ _FILES ['file'] ['tmp_name']: Come conservare il nome file e l'estensione?
- 22. $ _FILES e $ _POST dati vuoti durante il caricamento di determinati file
- 23. Identificazione del tipo di file in Windows
- 24. Django: convalida il tipo di file del file caricato
- 25. Invio di immagini da elementi Canvas usando Ajax e PHP $ _FILES
- 26. Posso rieseguire manualmente il rilevamento del tipo di file di vim?
- 27. Ricerca del tipo di immagine da NSData o UIImage
- 28. come controllare il tipo di file caricato è PDF
- 29. PHP - vuoto $ _POST e $ _FILES - durante il caricamento di file più grandi
- 30. Symfony: Posso restituire null da Tipo/Modulo?
perfetto, grazie – HappyDeveloper