extraction de php

  • Auteur de la discussion Auteur de la discussion comparef
  • Date de début Date de début
WRInaute occasionnel
slt,

j'ai un probleme dans un code de mon site,

j'ai inséré dans le champ (type LONGTEXT) d'une table (bdd mysql) du code contenant du php, et lorsque j'essai d'extraire le contenu de ce champs (avec un echo) le code php contenu dans ce champs n'est pas interprété et est affiché comme s'il sagissait d'un texte banale.

Comment faire pour que ce code php qui est contenu dans un champs soir interprété lorsque j'extrai ce champ ?

Merci d'avance pour vos reponse,

R
 
WRInaute occasionnel
C'est bon, j'ai trouvé !
si ca peut servir a quelqu'un qui ne sait pas non plus comment faire, il faut utiliser la fonction eval :

mixed eval ( string code_str )
eval évalue la chaîne code_str comme un script PHP. Parmi les utilisations possibles, cette fonction permet de stocker du code dans une base de données, pour utilisation ultérieure.
 
WRInaute occasionnel
(re)bonjour a tous
en fait le pb n'est pas résolu !
avec eval, je ne peut mettre que des variable, de plus je n'ai pas trouvé d'explication précise sur cette fonction et j'ai du mal a m'en servire.

Or je voudrai pouvoir extraire d'une base de donnée nimporte quel code php (requetes, variables, fonctions....).

quelqu'un a t il deja fai ce genre de chose ?

Merci pour votre aide,
R
 
WRInaute occasionnel
soyons daccord, tu veux generer du php en php à partir d une bdd, c est bien ca ?
oui je croi que c'est ca.
en d'autres mots je veu stocker du code php dans une base de donnée, et quand je l'extrait je voudrai que ce code php soit bien interprété.
 
WRInaute accro
ok, donc non je n'ai jamais fait ca :-) tu as pas trouvé d autres solutions que ca ? si c est pas indiscret, c est pour faire quoi ?
 
WRInaute occasionnel
Ba j'ai vaguement trouvé un solution vaseuse qui ne m'offre pas toutes les possibilités que je voulais (un solution que je veu abandonner).

En fait c pour mon nouveau site, j'aurai beaucoup de pages qui seront en évolution constante, il faut donc que je puisse changer le contenu de ces pages facilement et a tous moment, y compris le code php.
Au debut je pensai faire un fichier commun contenant mon code php qui est suceptible de changer et faire un include de ce fichier commun dans toutes les pages, mais j'ai peur que ca pose des problemes si il y a beaucoup de consultations (est ce que cela ne posera pas des pb s'il y a 1000 pages qui incluent ce fichiers et que chacunes de ces 1000 pages a un certain trafic ?).
Enfin bon je suis un peu dans une impasse, si quelqu'un a une idée n'hésitez pas !

Mais je serai tout de meme étonné qu'il n'y ai pas de fonction php qui forcerai l'interpretaion php d'une chaine de caracteres (meme si c'est contrenature puisque le php sert a générer du html....
 
Nouveau WRInaute
J'ai bien peur que tu cherches a faire une autre usine a gaz la !
Il y a surement une autre methode pour gerer tes modifications a venir, mais c'est un peu dur de te dire précisement comment sans en savoir plus.
Pour la fonction eval() elle permet bien en effet d'executer un code php. Attention aux $ qu'il faut préfixer avec un \ :

Code:
$ma_variable=ma_fonction($mon_param);
est équivalent à :
Code:
eval("\$ma_variable=ma_fonction(\$mon_param);");

Mais bon je le redis ce n'est certainement pas la solution de stocker du code dans une BDD. Les template et l'utilisation d'include est a mon avis bcp plus appropriée. Ca ne pose pas plsu de probleme d'avoir 1000 include sur un fichier que d'avoir 1000 requetes sur la base de donnée. A mon avis c'est meme mieux optimisé car apache doit certainement mettre le fichier en cache.
Un conseil : prend un peu plus de temps pour analyser tes besoins et trouver la meilleur methode pour y arriver ;)
 
WRInaute accro
oui, la solution d include semble bien plus appropriée.

>> il faut donc que je puisse changer le contenu de ces pages facilement et a tous moment, y compris le code php.

en theorie, tu n'as pas de pages "physiques" pour ton site, tout le contenu des pages est en BDD, enfin en tout cas, c est le cas de 99% des sites dynamiques qui n'ont pas de problème pour créer les pages qu'ils souhaitent :-) je vois pas de réel besoin de stocker du code php en BDD pour ton cas
 
WRInaute occasionnel
merci pour vos reponses,
oui eval devrai pouvoir le faire mais j'arrive aps a faire marcher cette fonction, l'ecriture est differente des autres fonctions, mais je croi que j'ai compris avec l'exemple de /* jerome */.
pour l'usine a gaz oui c vrai que ca commence a faire du code vraiment compliqué (et legerement bordélique aussi ;) )
je vai donc essayer de peser le pour et le contre de chaque solution afin de trouver la meilleure

Merci pour votre aide
 
WRInaute occasionnel
c'est possible, mais comme choix actuelement j'ai soit eval pour stocker du code php ds une base de donnée, soit un include d'un fichier qui contiendra ce code php...
il faut donc choisir le mieux entre ces deux méthode, si tu préfere, je vais choisir la "moins mauvaise" ;) (faute de mieux...)

e-kiwi a dit:
je vois pas de réel besoin de stocker du code php en BDD pour ton cas
Je ne souhaite pas expliquer sur quel genre de site je travail avant qu'il ne soit lancé mais il est indispensable que je puisse changer facilement par le code php sur l'ensemple des pages...
 
WRInaute occasionnel
Par curiosité, un eval sur ton php lu depuis ta bdd ne marche pas, ok, mais il te sort quoi comme erreur ?
 
WRInaute occasionnel
ca ne marchai pas paske je l'utilisai mal je pense, pour l'erreur, je ne me souvient plus, je referai des test cet apres midi, e je te dit ca si ya encor un erreur
 
WRInaute accro
>> il est indispensable que je puisse changer facilement par le code php sur l'ensemple des pages...

permet moi d emettre des doutes. programmant depuis un petit moment en php, je n'ai jamais eu besoin de modifier dynamiquement un code source, quelquesoit le projet entrepris. soit tu va sortir une révolution, soit tu dois pas etre parti sur la bonne solution. en te demandant ce que tu comptait faire, c etait pour t aider
 
WRInaute occasionnel
e-kiwi a dit:
soit tu va sortir une révolution
j'aimerai bien mais ca m'etonnerai ;) (ou alors une tres petite revolution :lol: )

e-kiwi a dit:
soit tu dois pas etre parti sur la bonne solution.
c'est fort possible, c'est pour ca que je me pose des questions (et que je vous en pose...)

e-kiwi a dit:
en te demandant ce que tu comptait faire, c etait pour t aider
Je n'en doute pas et je t'en remercie.
c'est vrai que ce n'est pas évident de m'aider sans savoir ce que je veu comme résultat.
Si je ne prefere pas dire ce que c'est, c'est parceque je ne peut pas expliquer l'ensemble des options et possibilités que je souhaite proposer...

Enfin bref, je pense que je vai utiliser un include.

Merci pour votre aide en tt cas !
 
Discussions similaires
Haut