Va un ejemplo sencillo, sin ningún tipo de verificación ni seguridad pero para que se vea el mecanismo.
Primero, la estructura de la tabla que usé para el ejemplo:
Código SQL
[-]
create table documentos
(
id int(11) not null auto_increment,
nombre char(75) not null,
contenido blob not null,
primary key(id)
)
Para subir un documento (subir.php):
Código PHP:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
mysql_connect('servidor', 'usuario', 'contraseña');
mysql_select_db('base');
$nombre = $_FILES['documento']['name'];
$contenido = mysql_real_escape_string(file_get_contents($_FILES['documento']['tmp_name']));
$sql = "insert into documentos values(0, '$nombre', '$contenido')";
mysql_query($sql) or die(mysql_error());
}
?>
<form method='post' enctype='multipart/form-data'>
<input type='file' name='documento'>
<input type='submit'>
</form>
Para descargar un documento (descargar.php)
Código PHP:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
mysql_connect('servidor', 'usuario', 'contraseña');
mysql_select_db('base');
$nombre= $_POST['nombre'];
$sql = "select * from documentos where nombre = '$nombre'";
$data = mysql_query($sql) or die(mysql_error());
$documento = mysql_fetch_object($data);
echo $documento->pdf;
exit;
}
?>
<form method='POST'>
<input type='text' name='nombre'>
<input type='submit'>
</form>
// Saludos