Voici mon problème. J'essaie d'appeler une page: foo.php? DocID = bar et renvoie un PDF à l'écran qui est stocké sous la forme d'un BLOB dans la base de données.IE (HTTPS): la génération de pdf à partir du fichier php ne fonctionne pas
Voici la partie de mon code qui renvoie en fait le 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.');
}
Cela fonctionne parfaitement bien dans Firefox.
Cependant, dans IE, il ne montre rien du tout. Si je suis sur une autre page (c'est-à-dire google.com) et que je tape l'URL pour accéder à cette page, elle dira que c'est fait, mais je vais quand même avoir google.com sur mon écran.
J'ai vérifié les en-têtes pour les réponses de Firefox et IE. Ils sont identiques.
Quelqu'un a-t-il des suggestions? Besoin de plus d'informations?
EDIT: Si elle aide à tous, voici l'en-tête de réponse et la première ligne du contenu:
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: En outre, la page qui tire le fichier pdf utilise en fait HTTPS au lieu de HTTP.
Merci à l'avance,
~ Zack
J'ai découvert le problème. Voir mon explication ci-dessous –