Bonjour,
J'ai une page php qui prend un paramètre et qui génère quelque chose (selon le paramètre), est-il possible - qu'à la fin de la page - de récupérer le code HTML généré ? c-a-d que la page va stoquer ce qu'elle a généré dans un fichier ?
Bonjour,
J'ai une page php qui prend un paramètre et qui génère quelque chose (selon le paramètre), est-il possible - qu'à la fin de la page - de récupérer le code HTML généré ? c-a-d que la page va stoquer ce qu'elle a généré dans un fichier ?
'...parfois l'informatique peut vous rendre fou...'
Salut,
Tout est possible enfin presque.
Cela dépend de quelle façon tu génères ta page.
Soit tu stockes le tout dans une variable et tu l'enregistres dans un fichier avant de faire un echo de la variable.
ou alors tu peux passer par le buffer de sortie. plus d'infos ici : http://fr.php.net/manual/fr/ref.outcontrol.php
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...
Why was the font tag an orphan ? Because it didn't have a font-family.
non je ne stoke rien dans aucune variable, dison par exemple que j'ai une page comme celle que tu es entrain de lire, c-a-d qui fais des requetes et des traitement pour t'afficher la page que t'es entrain de lire, et ce que je veux c'est récupérer le code HTML de cette page dans une variable (ou n'importe où)
'...parfois l'informatique peut vous rendre fou...'
quand tu generes une page html, tu fais des "echo" ou des "print" ? he bien au lieu de faire des echo ou des print, tu affecte ton code html dans une variable ($html, par exemple)
et tu l'affiches ou l'enregistres a la fin du script..
echo $html;
ou file_put_contents... ou que sais-je selon tes besoins !
le code suivant n'a pas maché :
je devrait avoir Hello 2 fois, mais c'est pas le cas !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <? ob_start(); print("Hello"); ob_end_flush(); $s = ob_get_contents(); print $s; ?>
'...parfois l'informatique peut vous rendre fou...'
non avec ce code tu n'auras qu'une seule fois Hello
Par contre, si tu avais regardé un peu la doc de ob_get_contents tu aurais vu qu'il faut l'appeler avant ob_end_flush car celui-ci détruit le buffer
Pierre
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...
Why was the font tag an orphan ? Because it didn't have a font-family.
le pb c'est que dans ma page je vais générer des données complexe, des tables imbriqués, des styles, des images...en fait je n'utilise pas des echo mais quand je veux afficher un truc je le met entre ?> et <?Envoyé par zevince
'...parfois l'informatique peut vous rendre fou...'
Salut
Lis attentivement les remarques de FCYPBA, il me semble être de très bon conseil.
Pensez à utiliser de préférence les tags longs, question de portabilité.
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework - Cours et tutoriels pour apprendre PHP - Forum PHP
ça marche merci
comment faire pour ne plus afficher ce qui est entre ob_start et ob_flush ? j'ai lu quelque part qu'il fallait modifier php.ini mais là où je vais utiliser le script, je n'ai pas accès au php.ini !!
'...parfois l'informatique peut vous rendre fou...'
c'est bon j'ai trouvé :
utiliser ob_end_clean() à la place de ob_end_flush()
'...parfois l'informatique peut vous rendre fou...'
En regardant la doc tu aurais vu la fonction qu'il te faut
Edit : Ne pas tenir compte de ce message
Pierre
PS : Ah les fins de semaine c'est bon
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...
Why was the font tag an orphan ? Because it didn't have a font-family.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager