hola amigos, estopy haciendo una base de datos la cual me permita ingresar y descargar archivos, Hasta ahora los archivos son guardados en la base de datos y los puedo mostrar en una lista. El problema esta cuando deseo descargalos.
Este el codigo que estoy usando:
?php
require("dbconnect.inc.php");
$qry = "SELECT tipo, contenido, nombre FROM archivos WHERE iddatos = $iddatos";
$res = mysql_query($qry);
$tipo = mysql_result($res, 0, "tipo");
$contenido = mysql_result($res, 0, "contenido");
$nombre = mysql_result($res, 0, "nombre");
header("Content-type: $tipo");
header("Content-Disposition: ; filename=\"$nombre\"");
print $contenido;
?>
y estos los errores que envia cuando intento descargar:
Notice: Undefined variable: iddatos in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 5
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 7
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 8
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 9
Warning: Cannot modify header information - headers already sent by (output started at c:\easyphp1-8\www\ejemplo2\descargar_archivo.php:5) in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 11
Warning: Cannot modify header information - headers already sent by (output started at c:\easyphp1-8\www\ejemplo2\descargar_archivo.php:5) in c:\easyphp1-8\www\ejemplo2\descargar_archivo.php on line 12
ando realmente muy confundido
este es ek codigo q utilizo para listar los archivos a descargar
<?php
require("dbconnect.inc.php");
$qry = "SELECT iddatos, nombre, titulo, tipo FROM archivos";
$res = mysql_query($qry);
while($fila = mysql_fetch_array($res))
{
print "$fila[titulo]
<br>
$fila[nombre] ($fila[tipo])
<br>
<a href='descargar_archivo.php?iddatos=$fila[iddatos]'>Descargar</a>
<br>
<br>";
}
?>
este para guardar los archivos en la base datos
<?php
require("dbconnect.inc.php");
$archivo = $_FILES["archivito"]["tmp_name"];
$tamanio = $_FILES["archivito"]["size"];
$tipo = $_FILES["archivito"]["type"];
$nombre = $_FILES["archivito"]["name"];
$titulo = $_POST["titulo"];
if ( $archivo != "none" )
{
$fp = fopen($archivo, "rb");
$contenido = fread($fp, $tamanio);
$contenido = addslashes($contenido);
fclose($fp);
$qry = "INSERT INTO archivos VALUES
(0,'$nombre','$titulo','$contenido','$tipo')";
mysql_query($qry);
if(mysql_affected_rows($conn) > 0)
print "Se ha guardado el archivo en la base de datos.";
else
print "NO se ha podido guardar el archivo en la base de datos.";
}
else
print "No se ha podido subir el archivo al servidor";
?>
y esta la conexion a base de datos
<?php
$conn = mysql_connect("localhost","root","hally")
or die ("No se puede establecer la conexión a la base de datos");
mysql_select_db("repositorio")
or die("No se tiene acceso a la base de datos");
?>
El problema es a la hora de descargar los archivos guardados