Non consentire > Immagini 2mb
Domanda
HI! Come posso verificare se gli utenti stanno tentando di caricare file di dimensioni superiori a 2 MB? Vorrei negarlo e inviare un messaggio di errore all'utente che sta tentando di farlo.
So che è qualcosa del genere, ma cosa dovrei cambiare il 50000 per diventare 2mb?
if ( HI!
Come posso verificare se gli utenti stanno tentando di caricare file di dimensioni superiori a 2 MB? Vorrei negarlo e inviare un messaggio di errore all'utente che sta tentando di farlo.
So che è qualcosa del genere, ma cosa dovrei cambiare il 50000 per diventare 2mb?
<*>FILES['imagefile']['size'] > 50000 )
{
die ("ERROR: Large File Size");
}
Soluzione
2 MB sono 2097152 byte.
Cambia il 50000 in 2097152 e sei pronto.
Altri suggerimenti
Il 5.000 è il numero di byte, quindi in pratica devi solo convertire 2 MB in byte. 1 MB è 1024 kilobyte e 1024 byte è 1 kilobyte. Facendo la matematica, otteniamo:
2 megabyte = 2 097 152 byte
Fondamentalmente, puoi calcolarlo in forma di codice
$maxFileSize = $MB_limit * 1024 * 1024;
E controlla che la dimensione del file non superi $ maxFileSize.
Supponendo che tu abbia un campo file in un modulo, chiamato 'upload', puoi controllare la dimensione del file come segue:
if ($ _FILES ['upload'] ['size'] > $ max_upload_size) {echo " File troppo grande " ;; }
Dove $ max_upload_size è la dimensione massima che si desidera consentire (ovviamente è necessario sostituire l'istruzione echo
con un messaggio di errore più utile).
Puoi anche utilizzare upload_max_filesize nel file php.ini, ma ciò causerà agli utenti un errore PHP se superano questo limite, anziché il tuo messaggio di errore personalizzato.