Foros del Web » Programando para Internet » PHP »

Subir archivos a diferentes carpetas

Estas en el tema de Subir archivos a diferentes carpetas en el foro de PHP en Foros del Web. Una consulta, necesito implementar un form para ingresar datos a una db y en el mismo poder ubir tres imagenes al server pero cada una ...
  #1 (permalink)  
Antiguo 14/04/2004, 16:35
 
Fecha de Ingreso: diciembre-2001
Ubicación: Mar del Plata
Mensajes: 201
Antigüedad: 16 años
Puntos: 0
Subir archivos a diferentes carpetas

Una consulta, necesito implementar un form para ingresar datos a una db y en el mismo poder ubir tres imagenes al server pero cada una a tres carpetas distintas y el nombre de los tres archivos a la db tambien , alguine me puede explicar como se hace esto, es posible ???
Desde ya gracias !!!
__________________
:) Fernando Dichiera (:
[email protected]
  #2 (permalink)  
Antiguo 15/04/2004, 02:57
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

En la funcion move_uploaded_file() (www.php.net/move_uploaded_file) el segundo parametro es la ruta y nombre con el que quieres grabar el fichero.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 15/04/2004, 12:27
 
Fecha de Ingreso: diciembre-2001
Ubicación: Mar del Plata
Mensajes: 201
Antigüedad: 16 años
Puntos: 0
Sonrisa perdona mi ignorancia

gracias josemi por contestar, pero no entiendo algo, si en el form yo pongo tres archivos distintos a subir cada uno lo elijo mediante un campo de archivo, pero necesito que por ejemplo:
archivo1video vaya a carpeta1
archivo2foto vaya a carpeta2
archivo3flash vaya a carpeta3
como tendria que hacer, es decir tendria que usar algo como los array en donde le digo tal archivo a tal carpeta y haci para los tres ????? es decir no me doy cuenta de como seria la logica para que esto funcione !!! se hacerlo con un solo archivo, pero con tres se me complico, por lo de que cada uno a su carpeta. Serias tan amable de explicarmelo, como para un principianteque soy !!!
tienes algun ejemplo o tutorial para estudiarlo ???

Desde ya gracias, eres muy amable !!!
__________________
:) Fernando Dichiera (:
[email protected]
  #4 (permalink)  
Antiguo 15/04/2004, 14:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Usa dos campos en tu formulario y ambos tipo array

<input type="file" name="archivo[]">
<input type="text" name="ruta[]">

<input type="file" name="archivo[]">
<input type="text" name="ruta[]">

<input type="file" name="archivo[]">
<input type="text" name="ruta[]">

En PHP recibiras un array con los archivos en:

$_FILES['archivo']['tmp_name'][$x]

y en
$_POST['ruta'][$x]

el otro array con sus rutas .. Aplica un bucle for() (para componer $x) y aplica tu move_uploaded_file() en cada pasada del bucle con ambas variables ..

Revisa la documentación oficial de PHP para ver el tema de como trabajar un upload de multiples archivos a la vez:

http://www.php.net/manual/en/feature...d.multiple.php

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 16/04/2004, 15:56
 
Fecha de Ingreso: diciembre-2001
Ubicación: Mar del Plata
Mensajes: 201
Antigüedad: 16 años
Puntos: 0
Gracias a todos

Cluster te cuento que en base a tu ayuda y la de Josemi y segun lo visto en php.net la solucion wue encontre es la siguiente, aparte del form con los campos file este apunta al siguiente php:

<?
$uploaddir1 = "miniaturas/";
$uploaddir2 = "tapas/";
$uploaddir3 = "videos/";
$uploaddir4 = "audios/";

$uploadfile1 = $uploaddir1 . $_FILES['miniatura']['name'];
$uploadfile2 = $uploaddir2 . $_FILES['tapa']['name'];
$uploadfile3 = $uploaddir3 . $_FILES['video']['name'];
$uploadfile4 = $uploaddir4 . $_FILES['audio']['name'];

if (!move_uploaded_file($_FILES['miniatura']['tmp_name'], $uploadfile1)) {
print "ERROR: File is invalid";
print_r($_FILES);
}

if (!move_uploaded_file($_FILES['tapa']['tmp_name'], $uploadfile2)) {
print "ERROR: File is invalid";
print_r($_FILES);
}

if (!move_uploaded_file($_FILES['video']['tmp_name'], $uploadfile3)) {
print "ERROR: File is invalid";
print_r($_FILES);
}

if (!move_uploaded_file($_FILES['audio']['tmp_name'], $uploadfile4)) {
print "ERROR: File is invalid";
print_r($_FILES);
}
?>

Por lo menos a mi me sirve y funciona bien, espero le sirva a otros colegas !!!
Muchas gracias por ayudarme a entender de a poco como es esto del php !!!
__________________
:) Fernando Dichiera (:
[email protected]
  #6 (permalink)  
Antiguo 16/04/2004, 16:48
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Bueno .. resolvistes el problema puntual dando nombre de "archivo" diferente a cada uno de esos archivos que subes. La propuesta que intentaba hacerme entender es la de usar dos arrays . uno para los archivos y otro para otras propiedades de los mismos .. de mismo indice creado (el [] ..) para tener un sistema versatil de N archivos a subir con sus respectivo comentario en un campo (elemento de otro(s) array(s))

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:24.