Jump to content

petit problème sous php.


Recommended Posts

j'ai un problème pour afficher un fichier pdf créé sous PHP

j'utilise les variables de session.

si je mets l'instruction "session start()" le fichier crée ne s'ouvre pas .. par contre sans cette instruction le fichier s'ouvre bien dans l'explorer..

<?php

session_start();

.......

.......

.......

.......

$taille = filesize($nomFichier);

header("Content-type: application/pdf");

header("Content-Length: $taille");

header("Content-Disposition: inline; filename=test.pdf");

readfile($nomFichier);

?>

il doit y avoir un conflit entre les deux... comment la contourner ??

Merci !

Link to comment
Share on other sites

j'ai la solution... bon je génére le pdf avec les class "ezpdf"... l'important est de faire les choses dans l'ordre...

d'abord dire que c'est du pdf :

include("class.ezpdf.php");

$pdf=new Cezpdf();

puis rechercher les données session :

session_start();

$val=$_SESSION["valeur"];

puis tous autres opérations (ne surtout pas inclure autre chose avant)

$pdf->selectFont('Helvetica.afm');

$pdf->addText(150,150,10,"$val");

$pdf->ezStream();

Link to comment
Share on other sites

par contre, j'ai un nouveau problème...

ce fichier session + pdf je voulais le lancer à partir d'un script javascript... et le fichier est corrompu... alors que si je le lance à partir d'une balise <a>, cela fonctionne...

quelle est la différence entre :

print("<script> window.open('session_pdf.php','_blank');</script>");

et

print("<a href=session_pdf.php target=_blank>Lien</a>");

merci de m'aider...

Link to comment
Share on other sites

j'ai contourner le prob en le faisant en deux etapes..

à la fin de la création du pdf j'ai simplement

header('location : nompagesuivante.php');

et dans la page suivante juste pour afficher

<?php

//session_start();

$tmp=ini_get("session.save_path");

$nf="$tmp/dossier.pdf";

echo $nf;

$taille = filesize($nf);

header("Content-type: application/pdf");

header("Content-Length: $taille");

header("Content-Disposition: inline; filename=dossier.pdf");

readfile($nf);

?>

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...