Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Subir varias imágenes con php multiupload

En esta ocasión vamos a ver un ejemplo de como subir varias imagenes o archivos al servidor con php utilizando multiupload y seleccionando varios archivos al mismo tiempo. Muy útil para portales que suben muchas imágenes.

Para poder seleccionar varias imagenes con el mismo input type file tenemos que asignarle el parametro multiple:
<input type="file" name="imagen[]" value="" multiple>
Ahora el ejemplo completo, solo copia y pega para probarlo:
<?php

if (isset($_FILES['imagen'])){
	
	$cantidad= count($_FILES["imagen"]["tmp_name"]);
	
	for ($i=0; $i<$cantidad; $i++){
	//Comprobamos si el fichero es una imagen
	if ($_FILES['imagen']['type'][$i]=='image/png' || $_FILES['imagen']['type'][$i]=='image/jpeg'){
	
	//Subimos el fichero al servidor
	move_uploaded_file($_FILES["imagen"]["tmp_name"][$i], $_FILES["imagen"]["name"][$i]);
	$validar=true;
	}
	else $validar=false;
	
	
}
}

?>
<form method="post" action="?" enctype="multipart/form-data">
<input type="file" name="imagen[]" value="" multiple><br>

<input type="submit" value="Subir Imagen">
</form>


<?php if (isset($_FILES['imagen']) && $validar==true){ ?>
<?php $cantidad= count($_FILES["imagen"]["tmp_name"]);
	
	for ($i=0; $i<$cantidad; $i++){?>
<h1><?php echo $_FILES["imagen"]["name"][$i] ?></h1>
<img src="<?php echo $_FILES["imagen"]["name"][$i] ?>" width="100">
<?php } }?>
Si te a gustado el post compártelo!
7
Puntos
25666
Visitas
14
Resp
Por alber hace 109 meses
Administrador
Respuesta #1
Esto sube los archivos, pero si quiero que me guarde en la base de datos?
1
Puntos
Por zapikero hace 102 meses
Avanzado Sitio web
Respuesta #2
Gracias amigo me sirvió de mucho (y)
1
Puntos
Por Luis Miguel hace 91 meses
Principiante
Respuesta #3
Buenas tengo un problemas con la ruta de destino en mi caso seria "galerias/" no se como colocar la ruta correctamente pueden ayudarme?
1
Puntos
Por Shukoy4 hace 87 meses
Principiante
Respuesta #4
hola, prueba con:
move_uploaded_file($_FILES["imagen"]["tmp_name"][$i], 'galerias/'.$_FILES["imagen"]["name"];
o con:
move_uploaded_file($_FILES["imagen"]["tmp_name"][$i], '../galerias/'.$_FILES["imagen"]["name"]
saludos
1
Puntos
Por alber hace 87 meses
Administrador
Respuesta #5
correcto si me funciono aunque tuve que agregar [$i] al final porque me daba errores con el array funciono de esta forma
move_uploaded_file($_FILES["imagen"]["tmp_name"][$i],'../galerias/'.$_FILES["imagen"]["name"][$i]
1
Puntos
Por Shukoy4 hace 87 meses
Principiante
Respuesta #6
Muchas gracias por el dato (y)
0
Puntos
Por Shukoy4 hace 87 meses
Principiante
Respuesta #7
exacto, cuando lo copie del post para darte el ejemplo falto copiar la [$i] pero veo que has pillado el concepto xd salu2
0
Puntos
Por alber hace 87 meses
Administrador
Respuesta #8
hola .. que tal soy nuevo y me gusto la forma tan sencilla en que dan la información precisa y concreta como debe de ser. disculpen ya lo aplique a mi proyecto y si me funciono, solo tengo un detalle, que también quiero subir .PDFs y .DOCX en este caso que se puede hacer...... cualquier respuesta sea bienvenida y muchas gracias.
0
Puntos
Por omarBethuel hace 81 meses
Principiante
Respuesta #9
omarBethuel crea un nuevo tema con tu petición, salu2
0
Puntos
Por alber hace 81 meses
Administrador
Respuesta #10
ok gracias!!!!!
en este mometo lo creo
0
Puntos
Por omarBethuel hace 81 meses
Principiante
Respuesta #11
hola buen aporte oye una pregunta como se gusrdar en la base de datos ya que yo meto imagnes y otros datos como descripción y id_usuario
0
Puntos
Por migue hace 81 meses
Principiante
Respuesta #12
hola buenas tardes necesito de su ayuda
0
Puntos
Por Angel hace 49 meses
Principiante
Respuesta #13
como puedo remplazar mis lineas de codigo por las tuyas y coom quedaria

if(!$this->upload->do_upload()){



redirect(base_url().'sliders');

for ($i=0; $i<$cantidad; $i++){

}

else{

$imagen = $this->upload->data();

$resultado = $this->Sliders_model->nuevo($imagen['file_name']);

$datos['imagen'] = base_url().'uploads/'.$imagen['file_name'];

}

$data['mensaje'] = '<script>$(window).load(function(){mensaje("Slider Agregado!");})</script>';

$data['sliders'] = $this->Sliders_model->lista();

$this->plantilla('lista_sliders',$data);
0
Puntos
Por Angel hace 49 meses
Principiante
Respuesta #14
como puedo remplazar mis lineas de codigo por las tuyas y coom quedaria

if(!$this->upload->do_upload()){



redirect(base_url().'sliders');

for ($i=0; $i<$cantidad; $i++){

}

else{

$imagen = $this->upload->data();

$resultado = $this->Sliders_model->nuevo($imagen['file_name']);

$datos['imagen'] = base_url().'uploads/'.$imagen['file_name'];

}

$data['mensaje'] = '<script>$(window).load(function(){mensaje("Slider Agregado!");})</script>';

$data['sliders'] = $this->Sliders_model->lista();

$this->plantilla('lista_sliders',$data);
0
Puntos
Por Angel hace 49 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate