lo so ma purtroppo ho bisogno di farlo cosi, capisco che non è il metodo migliore ma non capisco perche non mi debba funzionare..
lo so ma purtroppo ho bisogno di farlo cosi, capisco che non è il metodo migliore ma non capisco perche non mi debba funzionare..
purtroppo mi serve farlo cosi..e non capisco perche' non mi debba funzionare..
Saggio consiglio.
Soprattutto che c'entra "addslashes" per memorizzare il campo binario data?
Tra l'altro ci sono limitazioni sulla dimensione dei pacchetti che puoi scambiare tra client mysql e server, e che sono normalmente di dimensioni piccole (a memoria 1MB, potrei sbagliare e non ho voglia di controllare la documentazione).
Ciò significa che, banalmente, non puoi salvare file più grandi di TOT se non aumenti la dimensione predefinita.
Tra l'altro è malissimo perchè il processo mysql client rimane in stato "sending data" molto a lungo.
ragazzi allora a questo punto sapete dirmi come do i permessi al mio codice? quando eseguo: move_uploaded_file($allegato, $url)
mi dice "permission denied for...percorso.."
sarà un percorso sbagliato, o comunque dove l'utente dell'interprete PHP non può scrivere.
comincia con una sottocartella del percorso corrente
ok, upload alla cartella fatto e controllando manualmente il file arriva integro, scrivo il codice per il download e mi ridà comunque che il pdf è stato codificato male, a questo punto penso che il problema non era il mysql
codice di download:
codice:<!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"); $percorso = 'C:/wamp/www/upload/fattura lumia.pdf'; if (!file_exists($percorso)) { // se non esiste stampo un errore echo "Il file non esiste!"; }else{ // Se il file esiste... // Imposto gli header della pagina per forzare il download del file header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-Disposition: attachment; filename= " . 'nuovo.pdf'); header("Content-Transfer-Encoding: application/pdf"); // Leggo il contenuto del file readfile($percorso); } ?> mysql_close($link);
se sei sicuro che il file è integro quando lo carichi, prova a caricarlo e poi a scaricarlo con filezilla o simili.
così ti togli il dubbio che il problema è l'upoload (cosa probabile).
ho fatto copiaincolla del tuo codice, modificato il nome del PDF da recuperare e commentato le parti relativa a mysql
funziona correttamente
bene, adesso mi chiedo perchè non funziona a me. magari provo su un altro pc..