Comunidad de diseño web y desarrollo en internet online

ayuda para descarga archivos de una base de datos (WAMP) con php

Citar            
MensajeEscrito el 27 May 2015 09:09 am
<?php

$ssql = "SELECT archivo FROM doc_word WHERE ID= 3?"

//abrimos la conexion, y ejecutamos la query

$sql_host="localhost";
$sql_usuario="root";
$sql_pass="";
$sql_db="mibase";

$con = mysql_connect($sql_host, $sql_usuario, $sql_pass);
mysql_select_db($sql_db, $con);

$consulta = mssql_query($ssql, $con);

$registro = mssql_fetch_assoc($consulta);

$archivo = $registro["archivo"];

//pasamos los header del tipo de fichero… esto habrá que cambiarlo en funcion del fichero

header('Content-type: application/msword');
header('Content-type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
header('Content-type: application/vnd.openxmlformats-officedocument.wordprocessingml.template');
header('Content-type: application/vnd.ms-word.document.macroEnabled.12');
header('Content-type: application/vnd.ms-word.template.macroEnabled.12';
header('Content-type: application/vnd.oasis.opendocument.text');
header('Content-type: application/rtf');

header('Content-Disposition: attachment; filename=archivo.doc');
header('Content-Disposition: attachment; filename=archivo.dot');
header('Content-Disposition: attachment; filename=archivo.docx');
header('Content-Disposition: attachment; filename=archivo.dotx');
header('Content-Disposition: attachment; filename=archivo.docm');
header('Content-Disposition: attachment; filename=archivo.dotm');
header('Content-Disposition: attachment; filename=archivo.odt');
header('Content-Disposition: attachment; filename=archivo.rtf');

echo $archivo;

//cerramos todo

mssql_free_result($consulta);

CierraBD($con);

?>
si alguien me puede echar un amano se lo agradeceria, no consigo poder descargar ningun documento; tam quiero hacer para descargar documentos 3excel, pf, presentaciones, videos y fotos de la base de datos

Por victor86

2 de clabLevel



 

chrome
Citar            
MensajeEscrito el 27 May 2015 12:10 pm
Disculpa, pero los encabezados que estás poniendo no tienen ningún sentido. Le estás diciendo al navegador cosas contradictorias.

Además, parece que el archivo lo tienes cargado en un campo de la base de datos ¿es de tipo BLOB ese campo?.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 28 May 2015 01:39 pm
si es de tipo BLOB, pero de todas formas conseguí descargar los archivos ahora lo único que me sucede es que los vídeos no consigo subirlos por que me sale un error de como si el código php no estuviera en el servidor o que estuviese mal, y en word los archivos se me descargan pero me dan error a la hora de abrir los documentos ¿??¿?¿??¿?¿?¿??¿?¿?¿; por que dices que me contradigo con los enunciados??; tengo que decir que estoy aprendiendo ahora mismo php y diseño web en concreto pero por mi cuenta así
que imagínate lo que me esta costando ejejej un saludo y gracias por contestar

Por victor86

2 de clabLevel



 

chrome
Citar            
MensajeEscrito el 28 May 2015 07:38 pm
Bueno, ya dices que estás aprendiendo entonces te aconsejo que no guardes archivos completos en campos BLOB, es una muy mala idea!. Eso no hace más que complicar el desarrollo del sitio, agradan astronomicamente la base de datos y por lo tanto la enlentece.

Lo que deberías hacer es guardar los archivos como archivos en un directorio especial en el servidor y en la base de datos solamente guardar el nombre del archivo en un campo VARCHAR. Creeme, te vas a ahorrar mucho en aspirinas :P.

Lo que sucede con los encabezados que estás enviando es que le estás diciendo al navegador que el archivo que debe descargar es un archivo de Word, un template de Word, un archivo de OpenOffice y un archivo RTF todo al mismo tiempo, lo cual no tiene sentido. Un archivo es de un solo tipo, no de cinco tipos al mismo tiempo.

Con el nombre igual, le estás diciendo que lo almacene en la máquina del cliente con 8 nombres de archivo diferentes.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 03 Jun 2015 08:18 am
hola ya solucione todo ese problema ya se me descargan sin ningun problema y se me ven los documentos descargados por la base de datos, pero ahora el problema que tengo es que subi un video a la base de datos con campo tipo BLOB y al descargarlo no se me reproduce, tmb lo e comprimido y subido tmb pero al descomprimirlo tampoco puedo verlo ya qu eme dice que el archivo zip esta vacio, alguna sugerencia que no sea guardar la ruta del video en la base de datos ya que solo estoy haciendo pruebas par< el dia de mañana ponerlo en una servidor real y no en WAMP o servidores de base de datos semejantes WAMP

Por victor86

2 de clabLevel



 

chrome
Citar            
MensajeEscrito el 03 Jun 2015 02:56 pm
Hola, aquí te muestro como guardar las rutas en base de datos. Ya sea para imagen o video o documento, cualquier cosa :)




https://www.youtube.com/watch?v=sRCUKJ-OHTw

Código del ejemplo en la página de youtube :)

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.