Multiple file download v PHP?

Matej Kovacic matthai at mail.ljudmila.org
Thu Jul 18 12:54:52 CEST 2002


Ziv!

Imam vprasanje, ki je morda trivialno, vendar nekako nisem uspel najti
odgovora nanj.
Rad bi namrec downloadal vec datotek preko browserja.
Se pravi da ko kliknem na URL, se odpre dialog za shranjevanje datoteke.
Torej moram poslati content-type: application/octet-stream, potem pa samo
izpisem vsebino spremenljivke.

Zdaj... program, ki to dela je napisan spodaj. Ampak problem je ker zelim da
se downloadajo tri datoteke. Najprej se odpre dialog za prvo, nato za drugo
in nato se za tretjo.

Poleg tega bi rad da se na koncu na zaslon - ne v datoteko - izpise da je DL
koncan.
Samo problem je ker je treba headerje poslati na zacetku, kasneje jih ni
mozno vec posiljati. Se pravi ne morem poslati header da bom najprej poslal
malo text/html-ja, nato aplication/octetstream, nato pa spet malo
text/htmlja.
Ali pac? Morda kdo ve odgovor?

lp, Matej

P. S. program sem nekje skopiral, nisem pa uspel ugotoviti kaj je to
PMA_USR_BROWSER_AGENT. Iz imena mi je seveda jasno kaj naj bi to bilo,
vendar na php.net tega niza ne najdem nikjer, je to kaksna sistemska
spremenljivka (CGI environment) ali kaj tretjega?

Se program, da boste videli o cem govorim:

<?php

$file_content = "TEST";

// Set parameters
$filename = "test";
$ext       = "dat";
$mime_type = (PMA_USR_BROWSER_AGENT == 'IE' || PMA_USR_BROWSER_AGENT ==
'OPERA')
              ? 'application/octetstream'
              : 'application/octet-stream';

// Send headers
header('Content-Type: ' . $mime_type);
// IE need specific headers...
if (PMA_USR_BROWSER_AGENT == 'IE') {
    header('Content-Disposition: inline; filename="' . $filename . '.' .
$ext . '"');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
} else {
    header('Content-Disposition: attachment; filename="' . $filename . '.' .
$ext . '"');
    header('Expires: 0');
    header('Pragma: no-cache');
}

// Download the file...
echo $file_content;

?>




More information about the lugos-prog mailing list