Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z wysyłaniem dokumentu .pdf do przeglądarki
emiltukan
post 23.01.2009, 19:23:53
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 26.02.2007

Ostrzeżenie: (0%)
-----


Posiadam napisany kod, który wysyła dokument .pdf do przeglądarki. Dokumenty podzielone zostały na trzy grupy: darmowe, dla zarejestrowanych oraz dla abonentów. W dwóch ostatnich przypadkach przed wysłaniem dokumentu do przeglądarki system sprawdza, czy użytkownik posiada prawa do pobrania tego dokumentu. Skrypt wysyłający dokument do przeglądarki wygląda tak:

CODE

$this->_helper->layout->disableLayout();
$pa = $path.$nazwa;
$pdf = Zend_Pdf::load($pa);
$pdfData=$pdf->render();
header("Content-Disposition: inline; filename=".$nazwa);
if(isset($_SERVER['HTTP_USER_AGENT']) AND (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') == true)){
header('Content-type: application/pdf');
} else {
header("Content-type: application/x-pdf");
}

echo $pdfData;


Sktypt działa w Zend Framework. System wykrywa rodzaj przeglądarki i w zależności od niej wyświetla dokument.

U siebie nie wykryłem problemu z działaniem skryptu ponieważ działa poprawnie, ale w systemie znajduje się 7000 użytkowników i otrzymuję wiadomości, że są jakieś problemy z pobieraniem dokumentów i zamiast nich pojawiają się krzaczki. Kilka osób miało przestarzałe przeglądarki i wystarczyło je aktualizować, ale ostatnio pojawił się ten sam problem u osoby z IE7, a u mnie na IE7 działa dobrze. Nie mam pomysłu, co może powodować takie sporadyczne problemy. Proszę o wskazówkę.
Go to the top of the page
+Quote Post
plurr
post 23.01.2009, 23:13:12
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Być może skrypt się wcześniej wysypuje, dlatego header nic nie zwraca - zobacz errorloga.
Sam tworze system dla DTP i opieram się na bibliotece TCPDF. Zrezygnowałem z Zendowskiego z powodu ilości błędów i niedoróbek. Klasa jest jeszcze zbyt 'słaba' aby korzystać z niej dla DTP.


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
Go to the top of the page
+Quote Post
emiltukan
post 24.01.2009, 11:09:59
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 26.02.2007

Ostrzeżenie: (0%)
-----


Być może jest to problem klasy Zenda, więc ją wyrzucę i zobaczymy, czy będę otrzymywał informację od użytkowników. Sam tego niestety nie sprawdzę, bo nie jestem w stanie odtworzyć tego błędu, a analiza nagłówków nic nie daje bo wszystko wydaje się być poprawne.

Przejrzałem error logi i czasem pojawiają się błędy cgi. Wygląda na to, że skrypty się nie wyrabiają. Być może jest to wynikiem przeciążenia serwera. W serwisie jest masę plików do pobrania, a system działa na hostingu dzielonym nazwa.pl. Być może zbyt dużo osób pobiera pliki i stąd te problemy.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 08:14