Validar tipo de archivo no funciona
Publicado por Diego (45 intervenciones) el 23/10/2016 07:42:17
Hola amig@s!
He tenido un poco de problemas al querer comprobar el tipo de archivo que se desea subir al servidor, he estado buscando información y he probado con varios tipos de valores pero aún no logro nada.
Se trata de validar que los archivos sean de formato imagen y he probado con lo siguiente:
image/pjpeg
image/x-png
Image/bmp
image/gif
--------------------------
IMAGETYPE_JPEG
IMAGETYPE_PNG
IMAGETYPE_BMP
IMAGETYPE_GIF
todos me no me han funcionado.
Dejo mi código para que puedan visualizar en donde estoy fallando.
También intente colocar el operador != y cambiar en el ELSE -> move_uploaded_file(), pero sigue sin funcionar.
Gracias
Saludos!!
He tenido un poco de problemas al querer comprobar el tipo de archivo que se desea subir al servidor, he estado buscando información y he probado con varios tipos de valores pero aún no logro nada.
Se trata de validar que los archivos sean de formato imagen y he probado con lo siguiente:
image/pjpeg
image/x-png
Image/bmp
image/gif
--------------------------
IMAGETYPE_JPEG
IMAGETYPE_PNG
IMAGETYPE_BMP
IMAGETYPE_GIF
todos me no me han funcionado.
Dejo mi código para que puedan visualizar en donde estoy fallando.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
if(isset($_FILES['image'])){
$date = date("j-n-Y");
$img = $_FILES['image'];
$name = str_replace(" ", "-",$img['name']);
$name_img = $date."-".$name;
$type_img = $img['type'];
$size_img = $img['size'];
$tmp_name_img = $img['tmp_name'];
$folder = "../../../img/products/";
$save = $folder.$name_img;
// Tipos de archivos permitidos
$file_types = array("jpg" => IMAGETYPE_JPEG, "png" => IMAGETYPE_PNG, "bmp" => IMAGETYPE_BMP, "gif" => IMAGETYPE_GIF);
// Válidar tipo de fichero
if($type_img == $file_types['jpg'] || $type_img == $file_types['png'] || $type_img == $file_types['bmp'] || $type_img == $file_types['gif']){
// Verificar subida de archivo
if(!move_uploaded_file($tmp_name_img, $save)){
echo('<span class="error-msg"><i class="fa fa-times-circle fa-2x"></i>Error al cargar la imagen, inténtelo nuevamente</span>');
}else{
echo('<span class="success-msg"><i class="fa fa-check-circle fa-2x"></i>La imagen se cargo correctamente</span>');
echo('<img src="../../img/products/'.$name_img.'">');
}
}else{
echo('<span class="error-msg"><i class="fa fa-remove fa-2x"></i>El tipo de archivo no esta permitido, solo es posible subir archivos <b>.JPG, .PNG, .BMP y .GIF</span>');
}
}
?>
También intente colocar el operador != y cambiar en el ELSE -> move_uploaded_file(), pero sigue sin funcionar.
Gracias
Saludos!!
Valora esta pregunta


0