Buongiono a tutti, è la prima volta che scrivo in questo forum (finora mi sono sempre bastate le utilissime guide di html.it) ma ho un problema che non riesco a risolvere e la documentazione php non mi chiarisce cosa fare:
Devo sostanzialmente creare una pagina php dove sia possibile caricare un file pdf in un database postgresql e un altra pagina dove sia possibile scaricare lo stesso file.
La tabella postgres è così definita
e la pagina dove è possibile fare l'upload è questa:codice:CREATE TABLE salute.prova2 ( id serial NOT NULL, a bytea, CONSTRAINT prova2_pkey PRIMARY KEY (id)
Il pdf in effetti viene caricato (in formato bytea) nella tabella postgresql.codice:<form method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> File to upload/store in database:<br> <input type="file" name="form_data" size="40"> <input type="hidden" name="task" value ="uplImg"/> <input type="hidden" name="task" value ="fileUpload"/> <p><input type="submit" name="submit" value="submit"> </form> <?php if ($_POST[submit]=="submit"){ include_once('../funzioni.php'); ini_set('display_errors','Off'); $db=connection_pgsql() or die('Connessione al DBMS non riuscita'); $data = file_get_contents($_FILES['form_data']['tmp_name']); $escaped = pg_escape_bytea($data); $result = pg_prepare( "ins_pic",'INSERT INTO salute.prova2 (a) VALUES ($1)'); $result = pg_execute ("ins_pic",array('$escaped')); } ?>
Vorrei sapere ora come gestire il download della pdf appena caricato.
Se qualcuno riesce a darmi una mano lo ringrazio in anticipo
PS: non ho troppo ben capito i metodi php pg_lo_*, all'inizio pensavo di utilizzare questi ma poi ho trovato in un altro sito il pg_escape_bytea che funzionava.

Rispondi quotando