En este ejemplo podemos ver como hacer una subida múltiple de imágenes aplicándole una marca de agua a cada una de ellas usando php:
<?php

if(isset($_FILES['files']) && $_FILES['files']!='' ){

//Repetir bucle para subidas multiples
for ($i=0; $i < count($_FILES['files']['name']); $i++) { 

//Carpeta donde se guarda la marca de agua y las imagenes
$directorio='upload/';

//Guardar la imagen
move_uploaded_file($_FILES['files']['tmp_name'][$i], $directorio.$_FILES['files']['name'][$i]  );

//Cargar la marca de agua
$estampa = imagecreatefrompng($directorio.'logo.png');

//Cargar ima imagen recien guardada (jpg y png)
if($_FILES['files']['type'][$i]=='image/jpg' or $_FILES['files']['type'][$i]=='image/jpeg'){
	$im = imagecreatefromjpeg($directorio.$_FILES['files']['name'][$i]);
} else if($_FILES['files']['type'][$i]=='image/png'){
	$im = imagecreatefrompng($directorio.$_FILES['files']['name'][$i]);

}

//Establecer los márgenes para la estampa
$margen_dcho = 10;
$margen_inf = 10;
$sx = imagesx($estampa);
$sy = imagesy($estampa);

// Copiar la imagen de la estampa sobre nuestra foto usando los índices de márgen y el 
imagecopy($im, $estampa, imagesx($im) - $sx - $margen_dcho, imagesy($im) - $sy - $margen_inf, 0, 0, imagesx($estampa), imagesy($estampa));

//Remplazar la imagen con la marca de agua
if($_FILES['files']['type'][$i]=='image/jpg' or $_FILES['files']['type'][$i]=='image/jpeg'){
	imagejpeg($im,$directorio.$_FILES['files']['name'][$i]);
} else if($_FILES['files']['type'][$i]=='image/png'){
	imagepng($im,$directorio.$_FILES['files']['name'][$i]);

}

}
}
?>
<form action="" method="post" enctype="multipart/form-data">
	<input type="file" name="files[]" multiple>
	<input type="submit" value="subir">
</form>
ver como subir una sola imagen
Editado
1
Puntos
1442
Visitas
0
Resp
Por alber hace 7 años
Admin
Para comentar Inicia sesión o Regístrate
Phpres 2025@ All rights reserved.
Utilizamos cookies para mejorar la navegación en el sitio. Más información Aceptar