Wykorzystuje bardzo prosty kod. Działał on bez problemu do czasu, aż kilku użytkowników w sieci przesiadło się na Win XP.
Zadaniem skryptu jest pobranie pliku z servera. Dla użytkowników ważne jest przede wszystkim łatwe otwarcie pliku, zapoznanie się z jego treścią - pliki zachowują rzadko.
W W2K po uruchomieniu skryptu mają wybór otworzyć lub zapisać i w 99% procentach wybierają to pierwsze. W XP mogą tylko zapisać - w ogóle nie ma przycisku Otwórz. Testowałem na kilku maszynach z XP (jest to zachowanie standardowe). Co ciekwę problemu nie ma w Firefoksie, a tylko w IE.
Pdp jest to kwestia SP2 (nadal nie udało mi się tego zidentyfikować), niemniej nie chcę zmianiać ustawień na każdym PC.
W jaki sposób po stronie kodu mogę to wyeliminować?
<?php
$name='..\\pliki\\'.$nazwa;
if(!file_exists($name)){
echo('Nie ma takiego pliku na serwerze!');
return;
}
$fd = fopen($name,"r");
$size = filesize($name);
$contents = fread($fd, filesize($name));
fclose($fd);
header("Content-Type: application/octetstream;");
header("Content-Length: $size;");
header("Content-Disposition: attachment; filename=$name;");
echo $contents;
?>