yo tengo un Codigo PHP para subir imagenes, anda , pero yo q si tratan de subir un archivo q no sea JPG le de "El archivo no es balido."
este es el codigo:
Sube.html
Código HTML:
<form name="anyadir_foto" method=post action="recibir.php" enctype="multipart/form-data"> <input type=file name="archivo_foto"> <input type=submit value=" Subir imagen "> </form>
Código PHP:
<?php
// Función para generar nombres de 16 caracteres aleatorios
function F_gen_password($Paswd_Length){
$lower_ascii_bound = 50;
$upper_ascii_bound = 122;
$notuse = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108, 111);
$i = 0;
$password = '';
while ($i < $Paswd_Length){
mt_srand((double)microtime() * 1000000);
$randnum = mt_rand($lower_ascii_bound, $upper_ascii_bound);
if (!in_array($randnum, $notuse)){
$password = $password.chr($randnum);
$i++;
};
};
return $password;
} ;
// importación de archivo
$importacion_correcta = false;
if(isset($archivo_foto)and is_uploaded_file($archivo_foto)) {
// el archivo se ha subido correctamente
$cadena_aleatoria = F_gen_password(16);
$archivo_temp = "imagenes/galeria/temp/".$cadena_aleatoria.".jpg";
$archivo_m = "imagenes/galeria/m/".$cadena_aleatoria.".jpg";
$archivo_g = "imagenes/galeria/g/".$cadena_aleatoria.".jpg";
if (move_uploaded_file($archivo_foto, $archivo_temp)){ //en servidor
// el archivo se ha movido a su sitio correctamente
$importacion_correcta = true;
}else{
$importacion_correcta = false;
$msg = "La imagen se ha subido correctamente pero no se ha podido mover.";
}
}else{
$importacion_correcta = false;
$msg = "El archivo no se ha podido subir.";
}
if ($importacion_correcta==true){
$msg = "La imagen se ha recibido sin problemas.";
// obtener medidas de la imagen
$perfil_imagen = GetImageSize($archivo_temp);
$ancho_px = $perfil_imagen[0];
$alto_px = $perfil_imagen[1];
if ($ancho_px>$alto_px) $size = "width"; else $size = "height";
// transformar la imagen en los tamaños que nos conviene
// y copiarlas en las carpetas respectivas
require_once "class.dropshadow.php";
chmod($archivo_temp,0777);
// crear miniatura y grabarla en imagenes/galeria/m/
$ds = new dropShadow(FALSE);
$ds->loadImage($archivo_temp);
if ($size=="width") $ds->resizetosize(120, 0); else $ds->resizetosize(0, 120);
$ds->saveFinal($archivo_m,'jpg', $quality = 40);
// crear ampliacion y grabarla en imagenes/galeria/g/
$ds = new dropShadow(FALSE);
$ds->loadImage($archivo_temp);
if ($size=="width") $ds->resizetosize(350, 0); else $ds->resizetosize(0, 350);
$ds->saveFinal($archivo_g,'jpg', $quality = 60);
// eliminar archivo temporal
@unlink($archivo_temp);
$msg = "Foto añadida en http://www.dominio.com/imagenes/galeria/g/".$cadena_aleatoria.".jpg";
}
// devolver HTML
echo $msg;
// salir
return;
?>