Bueno, ahora estoy metido tambien con un UPLOAD para php.
Para aplicarle seguridad a esto, lo que se puede hacer es restringir las extensiones no?
Voy a prohibir todas las extensiones menos estas:
Código PHP:
.zip multipart/x-zip
.word application/msword
.wav audio/x-wav
.txt text/plain
.swf application/x-shockwave-flash
.rtf text/richtext
.psd application/octet-stream
.ppt application/mspowerpoint
.pdf application/pdf
.mpg audio/mpeg
.mpg video/mpeg
.mpeg video/mpeg
.mp3 video/x-mpeg
.mp3 audio/x-mpeg-3
.mov video/quicktime
.jpg image/jpeg
.jpeg image/jpeg
.avi video/avi
.avi video/msvideo
La forma de implementarlas voy a utilizar esto
Código PHP:
$allowed_types = array('multipart/x-zip',
'application/msword',
'audio/x-wav',
'text/plain',
'application/x-shockwave-flash',
'text/richtext',
'application/octet-stream',
'application/mspowerpoint',
'application/pdf',
'audio/mpeg',
'video/mpeg',
'video/mpeg',
'video/x-mpeg',
'audio/x-mpeg-3',
'video/quicktime',
'image/jpeg',
'image/jpeg',
'video/avi',
'video/msvideo');
El caso es como implemento el array luego?
porque el php que tenia era así
Código PHP:
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 100000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
}else{
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo)){
echo "El archivo ha sido cargado correctamente.";
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}