Require mais exécution séparé

WRInaute passionné
Alors un exemple vaut mieux qu'un grand discours :

index.php
Code:
<?php
echo "blabla";
require_once("une_page_qui_est_la_meme_pour_tous_mes_membres.php");
echo "Je suis un nul en php";
require_once("footer.php");
?>

une_page_qui_est_la_meme_pour_tous_mes_membres.php
Code:
<?php
eaccelerator_cache_page('cette_page_doit_etre_mise_en_cache, 7200);
$sql = mysql_query("SELECT benchmark(100000000,1+2)");
?>

Bon, le fichier avec le SQL Benchmark est juste pour montrer. Mais le problème, est que le require_once va executer toute la page (y compris la variable eaccelerator_cache_page) et donc cachera entièrement la page index.php (avec nom d'utilisateur etc...)..

En résumé, comment éxecuter 2 pages PHP différentes puis les "recoller"... Les 2 pages ont besoin d'être interprétés séparément, mais affichées ensemble... Pour l'instant la meilleur technique que j'ai trouvé serait un iframe ^^ alors bon ^^
 
WRInaute passionné
Hello,

c'est très "simple" : n'utilises pas cette fonction d'eAccelerator, qui n'est pas adaptée à ton besoin.

Tu peux te faire un système "maison" à coup de : eaccelerator_get() / echo / ob_start() / ob_get_contents() / eaccelerator_set() / ob_end_flush()

Ou encore : readfile() / ob_start() / ob_get_contents() / file_put_contents() / rename() / ob_end_flush()
 
WRInaute passionné
Hum, je trouvais cette fonction géniale et j'ai pris l'exemple d'eaccelerator, mais c'était une question que je m'étais déjà posé pour d'autres cas...

Donc oui pour ces autres fonctions que je me sers pour des parties bien spécifiques, mais je n'ai pas eu de réponse à d'autres cas :p
 
WRInaute passionné
La seule façon de faire vraiment une exécution séparée c'est de lancer un processus différent (à coup d'exec() ou via un appel HTTP par exemple)... chose qui au final sera souvent beaucoup plus lent que de faire le traitement en question.

Tu peux aussi jouer avec le SSI, mais le problème risque d'être le même.
 
WRInaute passionné
Vraiment bizarre qu'il y ait pas une fonction php pour faire ça...

Bon, je vais fouiner mais j'étais persuadé que j'avais zappé quelque chose...

Merci ;)
 
Discussions similaires
Haut