comment enregistrer un code généré

polako
Invité n'ayant pas de compte PHPfrance

07 juil. 2006, 13:03

bonjour a tous,

je génère une page html a l'aide de mon programme php, et j'aimerai savoir comment faire pour pouvoir sauvergarder mon code "généré".

quels moyens puis-je utiliser ?

merci a tous !

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

07 juil. 2006, 13:21

en utilisant les fonctions : fopen+fputs+fclose ou la fonction file_put_contents pour écrire le contenu html généré dans un fichier .HTM

Exemple :
Générateur de page HTML écrit en PHP:
<?php 
//source html de la page à écrire 
$html = "entrer ici le code html de la page à générer. Exemple: <h1>Ma page</h1><hr>Bienvenue,"; 

//Ecriture de la page HTML 
file_put_contents ("page_html1.htm", $html); 

//test: affichage de la page générée 
header ("location: page_html1.htm");
?>
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 377 Messages

07 juil. 2006, 14:00

attention, file_put_contents n'existe qu'à partir de php 5.
Pour les versions anterieures, comme le dit sadeq, c'est fopen, fputs et fclose, faute de mieux
Petit scarabée deviendra grand

polako
Invité n'ayant pas de compte PHPfrance

07 juil. 2006, 14:23

oui merci, mais j'ai une petite question, je génére mon code html dans une page php en faite;

mais comment faire pour récupéré juste le code html, pour pouvoir remplir $html dans ton exemple?

merci

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

07 juil. 2006, 14:43

remplace les echo que fait ton php par un cumul dans la variable $html

Exemple :
si ton code PHP fait :
echo "blabla";
...
echo "blabla";
...
echo "blabla";
il faut remplacer echo par un accumulateur de texte:
$html = "blabla"; //le 1°
...
$html .= "blabla"; //le suivant est un cumul (.=)
...
$html .= "blabla"; //et ainsi de suite...
à la fin, utiliser $html pour générer un fichier HTM
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Invité
Invité n'ayant pas de compte PHPfrance

07 juil. 2006, 15:44

oui, mais dans mon code, j'ai beaucoup de petites fonctions php, boucle qui génère tableau,date ect...
et je ne sais pas comment enregistrer le code que génere ses fonctions..

exemple:

je génère une date :


$date=date("Y-m-d")

print $date;

ce ki affiche dans ma page la date normal
sous forme:

2006-07-07

moi je veux enregistrer juste 2006-07-07.

moi je veux enregsitrer dans mon fichier html juste ca.
j'espere avoir réussi a t'expliquer mon souci, si besoin tu peux me demander des précisions.

Merci ++

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

07 juil. 2006, 22:16

C'est exactement ce que sadeq t'as suggéré, effecter à une variable au lieu d'afficher avec echo (print c'est la même chose).

pour récupérer le traitement d'une fonction il faut qu'elle renvoie le traitement avec "return":
function retour_date()
{
    $date=date("Y-m-d");
    return $date;
}
et l'appel
$html = retour_date();

$html .= autre_fonction(); // accumuler dans $html

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute