Salve a tutti navigando per il forum e per alcuni siti ho trovato il seguente script per dare la possibilità di mettere file presenti su un webserver in download verso un client:
Ecco il form:
Codice PHP:
<HTML>
<BODY>
<TABLE BORDER=8 WIDTH=40% ALIGN=CENTER BORDER=3>
<TR><TH>Fai clic sui link per scaricare i file</TH></TR>
<?
# elenco dei contenuti di una cartella con link
$cartella = opendir('docs');
while ($file = readdir($cartella)) {
$array_file[] = $file;
}
foreach ($array_file as $file) {
echo "<TR><TD><CENTER>";
if ( $file == ".." || $file == ".") {
continue;
}
$dimensioni_file=filesize("docs/".$file);
echo "<a href=\"
downloadit.php?nome_file=$file&dimensioni_file=$dimensioni_file
\">$file</a>,
";
echo "</TR></TD></CENTER>";
}
?>
</TABLE>
</BODY>
</HTML>
Ora questo form richiama lo script downloadit.php e gli passa i parametri del file:
Codice PHP:
<?php
header("Content-type: Application/octet-stream");
header("Content-Disposition: attachment; filename=$nome_file");
header("Content-Description: Download PHP");
header("Content-Length: $dimensioni_file");
readfile($nome_file);
?>
Lasciando perdere che in locale non funziona, ovvero mi parte il download dello script downloadit, vorrei sapere perchè anche provando su un reale webserver, il download funziona, ma quando vado ad aprire i file sono vuoti ed hanno dimensione 0! Non so se può esservi utile ma io lo uso per scaricare immagini jpg...forse devo cambiare il Content-type?
Grazie, attendo risposta