[PB PHP]ouvrir un fichier pdf à l'aide d'un formulaire [Résolu]

Signaler
Messages postés
8
Date d'inscription
mercredi 11 août 2004
Statut
Membre
Dernière intervention
30 août 2006
-
Messages postés
8
Date d'inscription
mercredi 11 août 2004
Statut
Membre
Dernière intervention
30 août 2006
-
bonjour à tous, comme vous vous en doutez j'ai un petit problème pour ouvrir un fichier pdf en fonction des choix sélectionné dans un formulaire. Dès que j'appuis sur le bouton submit pour valider mon formulaire, je souhaiterais que le fichier pdf ciblé par ce formulaire s'ouvre

Le fichier pdf est déjà crée, et mon formulaire me sert seulement à rechercher un fichier pdf en fonction de son nom.

voici le code  :

//créer une liste déroulante qui récupère les valeurs d'un champs d'une base.
echo "<td><select name= "choixape">";
echo  "<option ".($choixape=="0"?"selected":"")." value="0">Choisir un résultat</option>";  




while ($resultat = mysql_fetch_row($ReqLog))
{
 if($choixape==$resultat[0])
  echo "<option selected value="".$resultat[0]."">".$resultat[0]." - ".$resultat[1];
 else
  echo  "<option value="".$resultat[0]."">".$resultat[0]." - ".$resultat[1]; 
 echo  "</option>";
}
echo "</select></td>";




$i=0;
//2e liste déroulante où je récupère les 5 dernières années de la date système
echo  "<td><select name ="choixannee">";
echo "<option ".($choixannee= ="0"?"selected":"")." value="0">Choisir un résultat</option>";  




while($i!=5)
{
 $periode = date('Y')-$i;
 $i++; 
 
 echo  "<option value="".$periode."">".$periode;
 
}
echo "</option>"; 
 echo  "</select></td>";

// Initialise une variable avec le chemin et le nom du fichier pdf


$fichierstatint = $repertoirestatint."/statint-".$choixape."-".$choixannee.".pdf";




echo "<td></td>";
echo "</tr>";
echo "</form>";
echo  $fichierstatint;







//C'est ici que le problème se pose, je souhaite ouvrir le fichier pdf s'il existe dans mon arborescence





if(file_exists($fichierstatint))
{
 fopen($fichierstatint,'r');

}
echo "</table>";
?>

Merci par avance

2 réponses

Messages postés
8
Date d'inscription
mercredi 11 août 2004
Statut
Membre
Dernière intervention
30 août 2006

Comme personne ne m'a répondu, je suppose que personne n'avait la réponse, alors j'ai creusé dans mes méninges et j'ai finalement trouvé. Par conséquent, je vous donne la réponse, ça pourra vous servir un jour.

D'après le code ci-dessus, je n'ai modifié que ma boucle if qui me posé problème, pour la remplacer par celle ci :

// je vérifie si le formualaire à été valider et je vérifie si mon fichier pdf se trouve bien dans l'arborécence
if(($valider = = "ok")&&(file_exists($fichierstatint)))
{
// Intégration du fichier pdf sélectionné dans la page php  
 ?>
 
 <!-- Style qui définie la taille et position du fichier pdf dans la page -->
<style> 
  object{position:relative;width:700px;height:400px}
</style>









<!-- code html pour intégré votre fichier pdf dans votre page -->



<object
type ="application/pdf" classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" standby="Loading..." codetype="text/html">
 name="src" value=<?phpecho$fichierstatint?>>
   type="application/pdf" pluginspage="
http://www.adobe.com/products/acrobat/readstep.html">
' target='_blank'>http://www.adobe.com/products/acrobat/readstep.html">http://www.adobe.com/products/acrobat/readstep.html">

>
  <noembed>le nav. ne permet pas l'affichage</noembed>
</object>




La petite touche en plus est que le code ci-dessous vous permet d'encapsuler votre fichier pdf dans la page php, plutot que d'ouvrir une autre page. Pratique pour les sites internets dont le but est d'avoir toujours la même page devant les yeux (avec les menus, la banières, les rubriques etc )
Messages postés
8
Date d'inscription
mercredi 11 août 2004
Statut
Membre
Dernière intervention
30 août 2006

^^ petite erreur dans mon copier/coller, j'ai oublié de déactiver le lien au niveau de la balise

voci la correction :

type="application/pdf" pluginspage="
pluginspage="http://www.adobe.com/products/acrobat/readstep.html">
  <noembed>le nav. ne permet pas l'affichage</noembed>