Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
859 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Résultat code PHP dans une variable --> include ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Résultat code PHP dans une variable --> include ?

n°1523591
moustik510
Enfin en travaux !
Posté le 05-03-2007 à 10:08:48  profilanswer
 

Bonjour,
 
J'explique ce que je veux faire :
 
J'ai un fichier php disons bonjour.php :
 

Code :
  1. <p>Bonjour <strong><?php echo $nom ?></strong></p> <?php appel_fonction_bidon() ?>


 
Je veux l'appeler dans une fonction et mettre le résultat dans une variable.
 

Code :
  1. $nom = "Mon nom";
  2. $incl = recuperation("bonjour.php" );


 
$incl contiendra donc la sortie de bonjour.php : "<p>Bonjour <strong>Mon nom</strong></p> ".
Avec appel de la fonction appel_fonction_bidon() (donc affichage de son return éventuel)
 
Et pourra être affiché plus tard.
 
MAIS je ne sais pas comment faire :
 
include("bonjour.php" ) --> exécute le php et écrit tout de suite le code dans la page.
file_get_contents("bonjour.php" ) --> me retourne "<p>Bonjour <?php echo $nom ?></p> <?php appel_fonction_bidon() ?>" sans avoir exécuté le code php.
 
Il y a t'il une fonction que je ne connais pas ?
 
Merci.

mood
Publicité
Posté le 05-03-2007 à 10:08:48  profilanswer
 

n°1523593
chani_t
From Dune
Posté le 05-03-2007 à 10:17:40  profilanswer
 

p'tain....  [:baobab04]  (ouais j'laime bien ce smiley :D)
 
Tu fais une fonction... tout simplement au lieu d'inclure un fichier php....
 

Code :
  1. function fonction_toute_bidon ($variable1) {
  2. // calculs sur ta variable1
  3. $variable2=$variable1;
  4. return ($avariable2);
  5. }


Tu claque ça dans un fichier php style biblio.inc.php
Tu include ce fichier partout où tu veux avoir accés aux fonctions présente dans ce fichier
et tu appel ces fonctions comme des fonctions natives php...
 
bref une chose présente dans.. au choix, la doc PHP, des tutos, partout quoi. :o  :heink:

n°1523630
nORKy
Grmmph...
Posté le 05-03-2007 à 11:18:34  profilanswer
 

Sinon, tu peux chercher ob_start dans la doc de PHP si ce que Chani te propose ne te plait pas.

n°1523638
chani_t
From Dune
Posté le 05-03-2007 à 11:25:01  profilanswer
 

nORKy a écrit :

Sinon, tu peux chercher ob_start dans la doc de PHP si ce que Chani te propose ne te plait pas.


 
Yep... gestion d'un tampon (c'est sympa comme fonction ;) ) surtout util quand tu veux gérer un cache, ou éviter les soucis avec les headers..

n°1523756
sielfried
Posté le 05-03-2007 à 14:13:53  profilanswer
 
n°1523841
moustik510
Enfin en travaux !
Posté le 05-03-2007 à 15:36:27  profilanswer
 

sielfried a écrit :

Code :
  1. require 'bonjour.php';
  2. $output = ob_get_clean();



 
Ok c'est ça qu'il me faut ! Merci sielfried.
 
[ :fou: ]Chani_t : Merci, j'ai apris à faire une fonction.
Je suis développeur de métier (pas dans le web), j'ai 2 bibles sur PHP5, si je pose la question c'est que je n'ai pas trouvé la réponse par moi-même. C'est à ça que sert les forum non ?[/ :fou: ]
 
Je veux utiliser ça pour faire des templates.
 
J'ai une classe Template qui permet de charger un template et d'y placer une page principale.

Code :
  1. $t = new Template()
  2. $t->load_page("contact.php" );
  3. $t->use_template("main" );


 
J'ai un template "main" du genre :
 

Code :
  1. <html ....>
  2. <head><?php echo $this->title() ?></head>
  3. <body>
  4. <?php $this->menu(); ?>
  5. <?php $this->main(); ?>
  6. </body>
  7. </html>


 
$this->main(); charge la page défini par $t->load_page()
Par exemple la page de contact :
 

Code :
  1. <form method="post" action="<?php echo $_SERVER['PHP_SELF']"?>
  2. (...)
  3. </form>


 
--> Quand je fais load_page je ne veux pas que la page s'affiche tout de suite, je veux juste la stocker pour la mettre à la place de $this->main();
 
 
EDIT : Le problème s'est posé quand dans ma page contact.php j'ai voulu faire un header("location: ..." );
Vu que le début du template (juste avant le $this->main()) était déjà écrit : je n'avais pas le droit de modifier l'en-tête.

Message cité 1 fois
Message édité par moustik510 le 05-03-2007 à 15:39:19
n°1523884
chani_t
From Dune
Posté le 05-03-2007 à 16:21:23  profilanswer
 

moustik510 a écrit :

Ok c'est ça qu'il me faut ! Merci sielfried.
 
[ :fou: ]Chani_t : Merci, j'ai apris à faire une fonction.
Je suis développeur de métier (pas dans le web), j'ai 2 bibles sur PHP5, si je pose la question c'est que je n'ai pas trouvé la réponse par moi-même. C'est à ça que sert les forum non ?[/ :fou: ]


 
Oula... mossieur l'maréchal nous fait une crise de zéle :D..
 
en lisant ton post d'un premier abord, ce n'était pas évident que tu savais faire une fonction...
de plus sur HFR, ya pas que des personnes qui son des développeurs expérimentés.. loin de la (tout du moins dans la cat PHP  [:daique] )
Ensuite, si tu avais vraiment des bible en php5, ou si tu les avais lue avec attention, tu aurait forcément vu cette fonctionnalité..
Et puis ce que tu cherche à faire c'est utiliser un buffer (tampon).. pas mettre le résultat de la fonction dans une variable
 
Bon enfin... nOrky t'avais donné une trés bonne piste...
 
sans racune..

n°1523904
moustik510
Enfin en travaux !
Posté le 05-03-2007 à 16:39:52  profilanswer
 

chani_t a écrit :

pas mettre le résultat de la fonction dans une variable


 
Je cherchais plutot à mettre le contenu d'un fichier PHP dans une variable.  
 
En voyant l'erreur indiquant que je ne pouvais pas modifier le header une fois qu'il y avait quelque chose d'écrit dans le tampon, j'ai essayé de vider le tampon, mais je n'ai pas trouvé la fonction les fonctions indiquées par nORKy et sielfried, et, j'avoue, je ne savais même pas si c'était possible.
 
Merci en tout cas. Sur ce forum, positive ou négative, il y a toujours une réponse, ça permet d'avancer.
 
Faudrait un forum aussi dynamique sur SAP ...  :whistle: ... en français


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Résultat code PHP dans une variable --> include ?

 

Sujets relatifs
[PHP/Flash] - Barre de progression[Javascript/PHP] Recadrer une photo
[Resolu] Coder le style en PHP (police, taille police)PHP/sql
[newbie] Spécifier la taille d'un tableau par une variable ??[PHP] problème lecture / écriture dans un fichier
[PHP] Boucle et $_FILEcomment invoquer une variable qui contient des crochets
[PHP] Supprimer les 5 denrières lignes d'un fichier 
Plus de sujets relatifs à : Résultat code PHP dans une variable --> include ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR