PHP + PDF, comment faire pour enregistrer un PDF téléchargé à l'aide de curl?

Bienvenue

J'ai un petit problème avec la sauvegarde du pdf téléchargeable sur la page. Pour télécharger le pdf j'utilise Curl:

$CurlConnect = curl_init();
curl_setopt($CurlConnect, CURLOPT_URL, 'http://website.com/invoices/download/1');
curl_setopt($CurlConnect, CURLOPT_POST,   1);
curl_setopt($CurlConnect, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($CurlConnect, CURLOPT_POSTFIELDS, $request);
curl_setopt($CurlConnect, CURLOPT_USERPWD, $login.':'.$password);
$Result = curl_exec($CurlConnect);

Maintenant dans $Result(string) j'ai tout contenu du fichier PDF. Et maintenant que commence mon problème. Je voudrais enregistrer le pdf téléchargé:

header('Cache-Control: public'); 
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="new.pdf"');
header('Content-Length: '.filesize($Result));
readfile($Result);

Malheureusement, quand j'ai enregistrer ou ouvrir un nouveau fichier PDF, je reçois un document vierge. Peut-être que le problème est avec les dernières lignes de:

header('Content-Length: '.filesize($Result));
readfile($Result);

Malheureusement, je ne sais pas quoi modifier pour le faire fonctionner ... je demande votre aide. Grâce

  • pourquoi ne pas vous utiliser les php.net/manual/en/function.pdf-save.php
  • Je pense qu'il ya une erreur se produisant dans votre code. Enveloppez votre code dans un bloc try-catch et ajouter un peu de débogage étapes.
  • Je n'ai pas testé mais je pense que pour filesize() et readfile() vous avez besoin d'un véritable chemin d'accès du fichier au lieu de son contenu en tant que chaîne de caractères.
  • aussi essayer avec code.google.com/p/dompdf/wiki/Usage
InformationsquelleAutor Kuba | 2013-04-09