Ciao a tutti.
sono nuovo e poco esperto di php.
ciò premesso vengo al mio problema.
ho una pagina php nella quale inserisco un url di un file che sta su un qualsiasi altro server http, e questa pagina, dovrebbe scarica il suddetto file in una cartella del server dove risiede.
in pratica :
SERVER HTTP <------------------ FILE SU ALTRO SERVER HTTP
per fare ciò ho fatto una cosa del genere :
Codice PHP:
.....
.....
$contatore = 1;
echo "Inizio il download di : " . $riga['file_path_remoto'];
set_time_limit(300);
//Percorso file remoto
$remotefile=$riga['file_path_remoto'];
//Cartella locale in cui copiare il file
$cartella="incoming/"; // cartella dove mettere immagini
//apro il file remoto da leggere
$srcfile1 = fopen("$remotefile", "rb");
//prelevo il nome del file
$nomefile=basename($remotefile);
//apro il file in locale
if (!($fp1 = fopen($cartella.$nomefile,"wb")));
//scrivo contenuto del file remoto, ora in temp file, in file locale
while ($contents = fread( $srcfile1, 8192 )) {
fwrite( $fp1, $contents, strlen($contents) );
echo "
" . $contatore++ . "</p>";
}
//chiudo i due files
fclose($srcfile1);
fclose($fp1);
Il problema è che vorrei che in primis l'output del contatore fosse immediato e non come accade che esce la lista di numeri alla fine, in secondo luogo mi piacerebbe che l'utente possa anche chiudere la finestra ed il download proceda comunque in background.
Qualcuno può aiutarmi ?