/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Donwload flere filer på en gang.
Fra : Søren Friis


Dato : 22-04-02 17:12

Hejsa!

Er der nogen måde jeg kan lave en løkke så jeg kan downloade mange filer med
kun et "klik" ?
Jeg har prøvet at lave noget, men det fungerer bare ikke.

Når man har valgt hvilke filer man vil downloade, bliver de lagt ind i et
array ($fil)
Herefter kører jeg følgende:
for($i=0; $i<count($fil); $i++)
{
$filename = str_replace("//","/",$mappe.$fil[$i]);?>
<script language="JavaScript">
download<?echo($i);?> =
window.open("download.php?filename=<?echo($filename);?>","","height=100,widt
h=100");
settimeout(download<?echo($i);?>.close(),10000);
</script>
<?}

Og det dokument den kalder i popup vinduerne ser sådan her ud:

$shortname = basename($filename );
$size = filesize( $filename );
header("Content-Type: application/save");
header("Content-Length: $size");
header("Content-Disposition: attachment; filename=$shortname");
header("Content-Transfer-Encoding: binary");
$fh = fopen("$filename", "r");
fpassthru($fh);
exit;

Det virker fint nok når jeg IKKE har linien der udsætter lukningen af
vinduerne (settimeout osv), men så sidder jeg jo tilbage med en masse små
åbne vinduer
Hvis jeg til gengæld har linien med, bliver PHP scriptet slet ikke afviklet
i popupvinduet, og det bliver lukket med det samme... ikke efter det
interval jeg ellers har bedt den om (10 sek = 10000).

Nogen der har en løsning på problemet, eller kender en anden måde at gøre
det på?`

Mvh Søren Friis



 
 
Søren Friis (22-04-2002)
Kommentar
Fra : Søren Friis


Dato : 22-04-02 17:16

OK.... undskyld.... jeg mente selvf. download og ikke donwload

/SF



Jakob Møbjerg Nielse~ (23-04-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 23-04-02 12:06

> settimeout(download<?echo($i);?>.close(),10000);

Nu er jeg ikke den store JavaScript haj, men hvad med

settimeout("download<?echo($i);?>.close()",10000);
?

Ellers må du hellere spørge i dk.edb.internet.webdesign.clientside.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste