[php] roznica w konfiguracji

Odpowiedz Nowy wątek
Melon
2005-10-02 20:31
Melon
0

Witam.
Mam dzialajacy skrypt php ktory dziala bez zarzutow na jednym serverze. Teraz server zmieniam, i na drugim juz chodzi nieco gorzej, msyle ze wynika to z innej konfiguracji php. Chcialbym abyscie podpowiedzieli mi co dokladnie moze to powodowac. Fragment skryptu o ktory sie rozchodzi wyglada tak

    header('Pragma: no-cache');      
    header('Content-type: application/x-unknown; name="plik.exe"');
    header('Content-Disposition: attachment; filename="plik.exe'); 
    header('Content-Length: ' . filesize('plik.exe'));

    if ($fp = fopen('plik.exe', 'rb'))
        {
            flock($fp, 1);
            echo(fread($fp, filesize('plik.exe')));
            flock($fp, 3);
            fclose($fp);
    }

                {JAKIS FRAGMENT KODU}

skrypt ten sluzy do tego aby uzytkownik pobral plik.exe. No i teraz tak na maszynie na ktorej dziala obecnie jest tak, ze kiedy wyskoczy okienko (np w IE) "czy chcesz pobrac plik ? yes/no" i uzytkownik kliknie NIE to {JAKIS FRAGMENT KODU} NIE jest wykonywany. To mi sie podoba i jest ok. Ale na serwerze na ktory sie przenosze {JAKIS FRAGMENT KODU} jest wykonywany niezaleznie od tego czy uzytkownik w rzeczywistosci pobierze plik, czy przerwie w polowie, albo w ogole kliknie NO (ze go nie chce pobrac).
wersja php na serwerze 1, na ktoym wszystko dziala OK to 4.3.11 a ta na serwerze 2 na ktorym juz nie dziala tak jak ja chce to 4.3.9. Obstawiam roznice w konfiguracji. Prosze, powiedzcie mi dokladnie o co chodzi. Z gory dzieki za pomoc.

Pozostało 580 znaków

2005-10-04 09:44

Rejestracja: 17 lat temu

Ostatnio: 9 lat temu

0

taka wskazówka tylko:
1) Użyj readfile
2) Użyj flush(); przed tym {JAKAŚ TAM CZĘŚĆ KODU}
3) Sprawdź wynik funkcji ignore_user_abort() i porównaj na obydwu serwach
Po więcej info na temat powyższych rozwiązań odsyłam do manuala.


Grunt to uziemienie...

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0