andbin
25-08-2006, 09:36
Ho un problema ... davvero strano. Forse non è proprio un problema di programmazione (spostate pure il 3d se volete) ma spero che qualcuno possa darmi una mano a capire il motivo.
Sul mio sito utilizzo uno script PHP per forzare il download di alcuni file.
Il nocciolo dello script è questo:
....
....
header ("Pragma: public");
header ("Expires: 0");
header ("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header ("Cache-Control: private", false);
header ("Content-Type: application/force-download");
header ("Content-Disposition: attachment; filename=\"" . $basename . "\";");
header ("Content-Description: File Transfer");
header ("Content-Transfer-Encoding: binary");
header ("Content-Length: " . filesize ($filename));
set_time_limit (0);
@readfile ($filename);
....
Questo script viene eseguito a seguito di una richiesta GET del tipo:
http:// ...... /download.php?id=nomefile.xyz
Questo script lo uso principalmente per far scaricare dei file .zip (ma anche .pdf) dal sito. Dal mio PC di casa non ho problemi, con Firefox scarico gli zip e li apro.
Dal mio PC in ufficio ho degli stranissimi problemi: certi zip li scarica ma incompleti. Esempio: un file lungo 30129 bytes lo scarica ma solo per 30116 bytes. Risultato: lo zip è corrotto e non lo apro. Questo mi succede con Firefox, Netscape, ecc...
La prima cosa strana è che lo fa solo per alcuni zip e per essere precisi, gli zip che contengono file .exe.
L'altra cosa ancora più strana è che se provo a fare il download con il tool 'wget' funziona benissimo.
A casa ho le stesse versioni dei browser che ho in un ufficio, per cui deduco che la causa non è il browser.
Il fatto poi che sul mio PC d'ufficio wget scarichi bene il file mentre Firefox e Netscape non lo scaricano bene mi fa pensare che non sia nemmeno un problema di "rete".
Ma a questo punto, quale può essere il problema???
Grazie x qualunque suggerimento. :)
Sul mio sito utilizzo uno script PHP per forzare il download di alcuni file.
Il nocciolo dello script è questo:
....
....
header ("Pragma: public");
header ("Expires: 0");
header ("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header ("Cache-Control: private", false);
header ("Content-Type: application/force-download");
header ("Content-Disposition: attachment; filename=\"" . $basename . "\";");
header ("Content-Description: File Transfer");
header ("Content-Transfer-Encoding: binary");
header ("Content-Length: " . filesize ($filename));
set_time_limit (0);
@readfile ($filename);
....
Questo script viene eseguito a seguito di una richiesta GET del tipo:
http:// ...... /download.php?id=nomefile.xyz
Questo script lo uso principalmente per far scaricare dei file .zip (ma anche .pdf) dal sito. Dal mio PC di casa non ho problemi, con Firefox scarico gli zip e li apro.
Dal mio PC in ufficio ho degli stranissimi problemi: certi zip li scarica ma incompleti. Esempio: un file lungo 30129 bytes lo scarica ma solo per 30116 bytes. Risultato: lo zip è corrotto e non lo apro. Questo mi succede con Firefox, Netscape, ecc...
La prima cosa strana è che lo fa solo per alcuni zip e per essere precisi, gli zip che contengono file .exe.
L'altra cosa ancora più strana è che se provo a fare il download con il tool 'wget' funziona benissimo.
A casa ho le stesse versioni dei browser che ho in un ufficio, per cui deduco che la causa non è il browser.
Il fatto poi che sul mio PC d'ufficio wget scarichi bene il file mentre Firefox e Netscape non lo scaricano bene mi fa pensare che non sia nemmeno un problema di "rete".
Ma a questo punto, quale può essere il problema???
Grazie x qualunque suggerimento. :)