Jump to content
Sign in to follow this  
ruimcosta

Mysql + Blob fields....

Recommended Posts

ruimcosta

Biba,

Pegando numa ideia e sem querer discutir se será o melhor sistema ou não, criei uma tabela para repositório de ficheiros de vários tipos:

CREATE TABLE IF NOT EXISTS `armz_files` (
  `nid` int(100) NOT NULL AUTO_INCREMENT,
  `f_name` varchar(200) NOT NULL,
  `f_size` varchar(50) NOT NULL,
  `f_type` varchar(300) NOT NULL,
  `f_content` blob NOT NULL,
  `dreg` datetime NOT NULL,
  PRIMARY KEY (`nid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Armazem de Ficheiros para distribuir';

Aqui já coloquei alguns ficheiro utilizando este código:

    $fileName = $_FILES['txtfile']['name'];
    $tmpName  = $_FILES['txtfile']['tmp_name'];
    $fileSize = $_FILES['txtfile']['size'];
    $fileType = $_FILES['txtfile']['type'];
    
    $fp      = fopen($tmpName, 'r');
    $content = fread($fp, filesize($tmpName));
    $content = addslashes($content);
    fclose($fp);

Apos obter estes dados guardei na tabela.

Agora preciso de os extrair da base de dados e em principio, com este bloco de código, conseguiria:

$nid = $_GET['id'];

$sql = "select f_name, f_content, f_size, f_type from armz_files where nid = '$nid'";
$rs  = mysql_query($sql);

$data = @mysql_result($rs, 0, "f_content");
$name = @mysql_result($rs, 0, "f_name");
$size = @mysql_result($rs, 0, "f_size");
$type = @mysql_result($rs, 0, "f_type");


header("Content-type: $type");
header("Content-length: $size");
header("Content-Disposition: attachment; filename=$name");
echo $data;

Ora disto obtenhoum ficheiro sem extensão e mesmo atribuindo-lhe a extensão "á la pate", não consigo abrir o ficheiro pois da como corrompido. Isto neste caso especifico de um documento de word...

Alguma dica?

Obrigado


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
ruimcosta

Biba,

Decidi testar outros ficheiros e dei-me conta de ter o ficheiro word em questão danificado por natureza....

Obrigado


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
andrefilipeport

E aqule do pdf??  esse ja tava a dar, se calhar se compararares esse codigo com o que tenhs no pdf podes encontrar o erro,

P.S(dava-me jeito exportar PDF´S    :cheesygrin:)

Cumprimentos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.