Đây là vấn đề của tôi. Tôi đang cố gọi một trang: foo.php? DocID = bar và trả lại một tệp PDF cho màn hình được lưu trữ dưới dạng BLOB trong DB.IE (HTTPS): tạo pdf từ tệp php không hoạt động
Dưới đây là phần mã của tôi mà thực sự trả về PDF:
$docID = isset($_REQUEST['docID']) ? $_REQUEST['docID'] : null;
if ($docID == null){
die("Document ID was not given.");
}
$results = getDocumentResults($docID);
if (verifyUser($user, $results['ProductId'])){
header('Content-type: application/pdf');
// this is the BLOB data from the results.
print $results[1];
}
else{
die('You are not allowed to view this document.');
}
này hoạt động hoàn toàn tốt đẹp trong Firefox.
Tuy nhiên, trong IE, nó không hiển thị gì cả. Nếu tôi đang ở trên một trang khác (ví dụ: google.com.vn) và tôi nhập URL để truy cập trang này, nó sẽ thông báo rằng nó đã hoàn tất, nhưng tôi vẫn sẽ có google.com trên màn hình của tôi.
Tôi đã kiểm tra tiêu đề cho các phản hồi từ cả firefox và IE. Chúng giống hệt nhau.
Có ai có bất kỳ đề xuất nào không? Cần thêm thông tin chứ?
EDIT: Nếu nó giúp ở tất cả, đây là phản ứng tiêu đề và dòng đầu tiên của nội dung:
HTTP/1.1 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 349930
Content-Type: application/pdf
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: PHP/5.1.2
Set-Cookie: PHPSESSID=cql3n3oc13crv3r46h2q04dvq4; path=/; domain=.example.com
Content-Disposition: inline; filename='downloadedFile.pdf'
X-Powered-By: ASP.NET
Date: Tue, 21 Apr 2009 16:35:59 GMT
%PDF-1.4
EDIT: Ngoài ra, các trang mà kéo ra file pdf thực sự sử dụng HTTPS thay vì HTTP.
Cảm ơn trước,
~ Zack
tôi đã tìm ra vấn đề. Xem giải thích của tôi dưới đây –