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

  FORUM HardWare.fr
  Programmation

  Php : la fonction eval()...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Php : la fonction eval()...

n°103157
Thocan
La loi du silence
Posté le 21-02-2002 à 14:01:48  profilanswer
 

Salut,
 
J'ai une fonction dotée d'un grand nombre de paramètre.
de la forme :
--------------------
TraitementCra($OP1,$OP2,$OP3,$OP4,$OP5,$OP6,$OP7,$OP8,...) {
blabla }
--------------------
Je veux la construire avec une boucle "for", puis l'exécuter.
Comment faire?
 
Pour ce qui est de la construction, j'ai créé un string avec "for" qui vaut :
$str = "TraitementCra($OP1,$OP2,$OP3,$OP4,$OP5,$OP6,$OP7,$OP8,...) {
blabla }";
Donc jusque là, c bon.
 
Mais ensuite? Comment exécuter cette fonction dans mon code?
J'ai voulu utiliser "eval()" mais apparemment, je n'y arrive pas...
 
Quelqu'un a des explications?
 
Merci  :hello:

mood
Publicité
Posté le 21-02-2002 à 14:01:48  profilanswer
 

n°103162
Sh@rdar
Ex-PhPéteur
Posté le 21-02-2002 à 14:11:51  profilanswer
 

pourkoi tu passes pas plutôt tes variables sous forme de tableau ?


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°103164
Thocan
La loi du silence
Posté le 21-02-2002 à 14:14:34  profilanswer
 

Bah... je débute... :D  
 
En fait, j'ai 900 varaibles à passer dans ma fonction.
Je l'ai fait à la main (avec l'aide d'excel hein... ;) ) et ça marche très bien.
Maintenant, c vrai que j'aimerai bien faire ça proprement.
 
Je suis pas sûr que le tableau va changer grand chose : je vais tout de même devoir les définir 'à la main', non?

n°103165
Thocan
La loi du silence
Posté le 21-02-2002 à 14:15:03  profilanswer
 

En fait, mon message d'erreur actuel est :
-----
Parse error: parse error in c:\program files\easyphp\www\phpnuke1\html\Tmis\Formulaires\cracra.php(52) : eval()'d code on line 4
-----
 
avec apparemment un bug à la ligne suivante :
$str1 .= "{
...
\$fp_Cra = \$fopen(\"Tmis/Formulaires/Tmp/leCra_\".\$no
m.\".html\",\"w\" );
...
}";
--------
J'ai essayé en mettant de antislaches ou non devant les $, mais ça change rien...

 

[jfdsdjhfuetppo]--Message édité par Thocan--[/jfdsdjhfuetppo]

n°103167
Sh@rdar
Ex-PhPéteur
Posté le 21-02-2002 à 14:20:48  profilanswer
 

je pige toujours pas ce que tu veux faire...
 
explique tout bien (que fait la fonction,qu'y a t il dans les $OP etc..)
 
sinon à vue de nez soit un tableau, soit une fonction récursive
 
Function Op($OP) {
  global $OP;
  traitement ...;
  $OP++;
  Op($OP);
}


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°103170
Thocan
La loi du silence
Posté le 21-02-2002 à 14:31:11  profilanswer
 

En fait, j'ai un formulaire avec... 900 checkbox !
Vi, quand même!  ;)  
Pour les besoins du site, je dois enregistrer le résultat de ce formulaire dans un fichier htm.
Il faut donc que je passe toutes les variables dans une fonction qui va écrire ce fichier htm.
 
Tout marche si je définis ma fonction manuellement.
Mais j'aimerai, pour plus de lisibilité, construire ma fonction grâce à des boucles "for" imbriquées pour obtenir grosso modo :
--------------------------
function TraitementCra($P1AM1,$P1AM2,$P1AM3,...$P1AM31,P2AM1,P2AM2,P2AM3,...,...,P14AM31) {
//le reste de ma fonction avec des \", des $ et tout ce qui va bien...  :wahoo:  
}
--------------------------
Et ensuite exécuter cette fonction :
--------------------------
TraitementCra();
--------------------------
Voilà...
Le problème c'est que je me retrouve avec le message d'erreur cité plus haut et je ne vois pas vraiment d'où vient le bug... :cry:  
 
 :sweat:  :)

n°103229
Thocan
La loi du silence
Posté le 21-02-2002 à 15:49:50  profilanswer
 

Dans ma fonction, j'ai mes paramètres $P1AM1 etc...
Comment faire pour que, lors de l'eval, il ne me les exécute pas? (ie qu'il ne me mettent pas la valeur associée).
 
J'ai essayé de mettre \$P1AM1... mais ça n'a pas l'air de fonctionner!

n°103270
Thocan
La loi du silence
Posté le 21-02-2002 à 17:01:41  profilanswer
 

personne?  :??:  :sweat:  :cry:  
 
 :hello:

n°103278
Sh@rdar
Ex-PhPéteur
Posté le 21-02-2002 à 17:15:25  profilanswer
 

à mon avis tu t'y prends pas par le bon bout
 
déjà ça serait vachement plus simple (et moins gourmant en ressources) de pas faire de fonction et de traiter tes variables en boucle une par une.
 
ensuite, en mettant <input type="checkbox" name="OP[]" value="..."> tu récupère les valeur dans le tableau OP[], y a plus qu'a le traiter avec une bête boucle style
 
.. ouverture du fichier ..
$i=0;
while (is_array($OP["$i"])) {
  $OP["$i"] = ....
  .. écriture du fichier HTML ..
  $i++;
}
.. fermeture du fichier ..


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°103292
Thocan
La loi du silence
Posté le 21-02-2002 à 17:51:27  profilanswer
 

Ok, merci, je vais essayer ça...  :jap:

mood
Publicité
Posté le 21-02-2002 à 17:51:27  profilanswer
 

n°103355
Profil sup​primé
Posté le 21-02-2002 à 20:54:15  answer
 

essayes comme ca :
 
for ($i=1;$i<=900;$i++)
{
   $tmp = "OP".$i;
   TraitementCra ($$tmp);
}

 

[jfdsdjhfuetppo]--Message édité par Yack--[/jfdsdjhfuetppo]


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

  Php : la fonction eval()...

 

Sujets relatifs
[PHP] javascript ej c pas.. chui desesperéPgp : pb de variable et de fonction
[PHP] modifier l'affichage des resultats....[PHP] - Mise en place phpBB...
[PHP] - Faire apparaitre un resultat php sur un site non-phpA tout ceux qui ont fait un forum en PHP/MySQL
[Form + PHP ?] Indiquez les erreurs du formulaires ?[PHP] Recherche un sript pour afficher une gallerie d'image
[PHP] [HTML] Structure de site et securite 
Plus de sujets relatifs à : Php : la fonction eval()...


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