Foros del Web » Programando para Internet » PHP »

Necesito subir y descargar archivos a mysql

Estas en el tema de Necesito subir y descargar archivos a mysql en el foro de PHP en Foros del Web. necesito subir y descargar 3 archivos mediante un formulario php de mysql la tabla esta creada de la siguiente manera (sgp,sisin,informe) son documentos de excel ...
  #1 (permalink)  
Antiguo 26/10/2011, 09:51
 
Fecha de Ingreso: octubre-2011
Mensajes: 2
Antigüedad: 12 años, 6 meses
Puntos: 0
Mensaje Necesito subir y descargar archivos a mysql

necesito subir y descargar 3 archivos mediante un formulario php de mysql
la tabla esta creada de la siguiente manera (sgp,sisin,informe) son documentos de excel y word

CREATE TABLE `proyecto` (
`id` int(11) NOT NULL auto_increment,
`proyecto` varchar(50) NOT NULL,
`sgp` mediumblob NOT NULL,
`sisin` mediumblob NOT NULL,
`informe` mediumblob NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

mediante este formulario puedo subir los archivos al servidor corrijan si esta mal... por favor.

<form action="subir.php" method="post" enctype="multipart/form-data" name="insertar">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000">
proyecto<br>
<INPUT NAME="proyecto" TYPE="TEXT" size="50">
<br>
sgp<br>
<INPUT TYPE="file" NAME="sgp"><br>
sisin<br>
<INPUT TYPE="file" NAME="sisin"><br>
informe<br>
<INPUT TYPE="file" NAME="informe"><br>

<INPUT TYPE="SUBMIT" value="insertar">
</FORM>

Ahora no encuentro la forma de descargar esos archivos del servidor desde un cliente...
  #2 (permalink)  
Antiguo 26/10/2011, 10:38
Avatar de tomark4  
Fecha de Ingreso: septiembre-2007
Mensajes: 154
Antigüedad: 16 años, 7 meses
Puntos: 29
Respuesta: Necesito subir y descargar archivos a mysql

En primer lugar te recomiendo que los archivos los coloques en una carpeta y en la base de datos guardas las ruta, luego cuando hagas la consulta de la base de datos pones un link del archivo en la ruta donde los guardado

por ejemplos los subes /archivos/nombrearchivo.doc

en la base de datos guardas el nombre del archivo nombrearchivo.doc

y luego los listas con un link

Código HTML:
Ver original
  1. <a href='archivos/nombrearchivo.doc'>nombrearchivo.doc</a>
  #3 (permalink)  
Antiguo 26/10/2011, 11:07
 
Fecha de Ingreso: julio-2011
Mensajes: 161
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: Necesito subir y descargar archivos a mysql

Como menciono lo recomendable es subirlo a una carpeta del servidor y guardar la ruta del archivo en tu bd, un punto importante es que declares tus campos como multifile, y pones un hipervinculo que diga Agregar otro archivo para que sea dinamico Ejemplo :

<input name="images[]" type="file" />
<a href="javascript:void(0);" onClick="add_file_field();">Agregar Otro Archivo</a><br />


y tu funcion add_file_field() seria asi :

<script>
function add_file_field(){
var container=document.getElementById('file_container' );
var file_field=document.createElement('input');
file_field.name='images[]';
file_field.type='file';
container.appendChild(file_field);
var br_field=document.createElement('br');
container.appendChild(br_field);


}
</script>

pruebalo y me comentas.
  #4 (permalink)  
Antiguo 26/10/2011, 16:53
 
Fecha de Ingreso: octubre-2011
Mensajes: 2
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Necesito subir y descargar archivos a mysql

..... SE PUEDE COMO LE HAGO ...Es posible que necesitemos subir más de un archivo a nuestro servidor en un único formulario. Para ello, podemos usar un array para que sea más sencillo manejarlos:
<form enctype=”multipart/form-data” action=”$PHP_SELF” method=’post’>
<p>Subir estos archivos:</p>
<input type=’file’ name=’userfile[]‘/>
<input type=’file’ name=’userfile[]‘/>
<input type=’submit’ value=’Enviar fichero’>
</form>
De esta manera, almacenamos los ficheros como un array, al que podemos acceder así:
$_FILES['userfile']['name'][0] , $_FILES['userfile']['name'][1] , etc… ESTO LO ENCONTRE EN UNA PAGINA Y NO DEJARON MAS... COMO SERIA ESTE METODO... AGRADESCO MUCHO SU AYUDA..
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

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 02:35.