download file pdf da mysql con php

Davide Valenti

Nuovo Utente
6 Ago 2015
1
0
0
salve ragazzi,sono un nuovo utente, mi chiamo davide :) avrei un file pdf caricato su un database con nomefile,tipo,size,dati(mediumblob).
adesso avrei bisogno di creare un link(o salvataggio o visualizzazione è uguale)
in realtà ho già creato qualcosa ma con scarsi risultati(scarica il file ma è impossibile aprirlo con acrobat reader probabilmente è stato decodificato male) e cercando su internet notavo che le soluzioni erano uguali o simili alle mie.
mi appello a qualcuno di voi per il codice o per una semplice spiegazione, scusate il disturbo e grazie in anticipo.

carico la funzione di upload che anche se è funzionante non so se è corretta :
PHP:
<?php 
	//creo la connessione
	$link = mysql_connect('localhost','root',''); 
	if (!$link) { 
		die('Non posso connettermi a MySQL: ' . mysql_error()); 
	} 
	echo 'Connection OK'; 
//seleziono il database
mysql_select_db("archivio")
	 	or die ("non trovo il DB");	
//Acquisisco le informazioni del form
$nome = $_POST['nome'];
$codfisc = $_POST['codice'];
$cognome = $_POST['cognome'];
	
	//variabili relative all'allegato
	$allegato = $_FILES['allegato']['tmp_name']; 
	$allegato_type = $_FILES['allegato']['type']; 
	$allegato_name = $_FILES['allegato']['name']; 
	$allegato_size = $_FILES['allegato']['size'];
	
	if (is_uploaded_file($allegato)) 
	{ 
	  // Apro e leggo il file allegato 
	  $file = fopen($allegato,'rb'); 
	  $data = fread($file, filesize($allegato)); 
	  $data = addslashes($data);
	  fclose($file); 
	} 

	//creo query di inserimento
	$inser= "INSERT INTO utenti
						(nome,cognome,codfisc,nomef,tipo,size,dati)
						VALUES
						('$nome','$cognome','$codfisc','$allegato_name',
						'$allegato_type','$allegato_size','$data')";
   //inserisco nel db
	$result = mysql_query($inser);
	//controllo che sia andato a buonfine
	if($result){
		echo("<h1>Dati inseriti correttamente");
	}
	else{
		echo("<h1>Errore inserimento dati");
	}
	mysql_close($link); 
?>

ed ecco quella di download (non funzionante):

PHP:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="PHP Studio">
<title>untitled</title>
</head>
<body>
    <?php
         //creo la connesione
    	$link = mysql_connect('localhost','root','');
	if (!$link) {
		die('Non posso connettermi a MySQL: ' . mysql_error());
	}
	echo 'Connection OK';
	//seleziono il database
	 mysql_select_db("archivio")
	 	or die ("non trovo il DB");
    $query = mysql_query("SELECT nomef, tipo, size, dati FROM utenti WHERE nomef = 'suca.pdf'");
    $row = mysql_fetch_assoc($query);
    $nome = $row["nomef"]; // nome del file da scaricare
    $tipo= $row["tipo"]; // tipo file (es. application/pdf)
    $size= $row["size"]; // dimensione del file in bytes
    $bytes = $row["dati"]; // dati binari del file
    mysql_close($link);
    // scarichiamo il file
    header('Content-Transfer-Encoding: binary');
    header("Content-Length: $size");
    header("Content-Type: $tipo");
    header("Content-Disposition: inline; filename=$nome");
    echo $bytes;
    mysql_close($link);
?>
</body>
</html>

grazie in anticipo delle risposte.
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
attento all'header, da manuale php
Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include, or require, functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.
 
Discussioni simili
Autore Titolo Forum Risposte Data
I [PHP] visualizza file pdf in una cartella e download PHP 7
M Creare traccia di download file sul server HTML e CSS 2
S Download di un file in automatico dopo la sua creazione PHP 2
R Download file multipli da directory php PHP 0
V Servizio design pagina web e download in self contained html file Discussioni Varie 1
MarcoGrazia [PHP] Download di file con errore all'interno. PHP 1
C [PHP] Problema con download file PHP 0
spider81man [PHP] Pulsante SUBMIT per download diretto dei file PHP 9
F [PHP] Download file da campo LongBlob PHP 1
G Javascript e download file Javascript 6
fabryx [PHP] RISOLTO: Download file da web e trasferimento su server PHP 2
romeocharly E' possibile creare un collegamento tra un id di db mysql ed un file per il download? PHP 0
romeocharly Modifca per permettere il download di un file , su 4, a punti raggiunti PHP 0
S come impedire download diretto dei file ma non da pagina web PHP 0
G Forzare il download di un file con PHP PHP 0
F Forzare download file: non mi funziona in nessun modo! PHP 1
M Download file remoto da codice php PHP 3
A Script per download non legge stensione file PHP 1
M Download file di gradi dimensioni. PHP 0
F like download file PHP 2
L Consiglio su download o no di file con php PHP 0
S proteggere download dei file PHP 7
D [risolto] Questo file potrebbe danneggiare il tuo computer - Download con PHP PHP 2
R Download file da host esterno con Curl PHP 0
IImanuII Download di file tramite Ajax Ajax 14
T Download di file con Progress Bar Sviluppo app per Android 1
Trapano Inserire tastino "download file" PHP 18
E Download file PHP 2
Z evitare il download diretto di file PHP 2
LaKanka Problema download file .gz da directory protetta su altro server PHP 13
K download file su server e registrazione su database Classic ASP 1
P [JSP] Download di file di (quasi) ogni tipo! Java 6
I script download file PHP 2
LaKanka Problema download e file compressi PHP 14
B Download file CSV con Explorer HTML e CSS 1
C cms specifico per upload/download di file CMS (Content Management System) 8
L problema download file PHP 15
S Problemi nel download file xls HTML e CSS 4
A Forzatura del download di un file... PHP 1
C php: al download di un file scrivere il log su file esterno. PHP 1
S Download di un file PHP 0
P download file PHP 1
S Pulsante flash !Help come si fa il download di un file zip? Flash 2
S Come contare i Download file .zip su html HTML e CSS 10
C Problemi di download file .xls HTML e CSS 1
Z download file grandi Hosting 1
D download di file PHP 2
L [DW] impostazioni tabelle + download file HTML e CSS 1
S inserimento file per download HTML e CSS 1
D rotella di caricamento che si toglie quando parte il download Ajax 0

Discussioni simili