View previous topic :: View next topic |
Author |
Message |
chamalo Smarty Rookie
Joined: 22 Jul 2008 Posts: 12
|
Posted: Thu Aug 07, 2008 6:20 pm Post subject: integrer du PHP si une condition smarty est vrai |
|
|
bonjour
j ai un script tpl utilisé avec smarty
dans ce script suite a une condition j execute une fonction PHP me faisant une requete sql!
Or le principe du tpl est d affiché uniquement ce qui doit etre affiché, mais de tout interpréter, donc mon script PHP est interprété a chaque fois que le script est lancé et non pas a chaque fois que la condition est validée! est il possible de changer ca?
Je vous remercie par avance |
|
Back to top |
|
arnogb69 Smarty Rookie
Joined: 07 May 2008 Posts: 11
|
Posted: Fri Aug 08, 2008 8:45 am Post subject: |
|
|
Salut Chamalo,
La solution serait d'effectuer ta requête dans ton code PHP, et d'y insérer ta condition ici...
Sinon, si tu fais un simple {if} Smarty, normalement, il ne rentre pas dans ta condition et n'exécute pas ton code! |
|
Back to top |
|
chamalo Smarty Rookie
Joined: 22 Jul 2008 Posts: 12
|
Posted: Fri Aug 08, 2008 3:03 pm Post subject: |
|
|
Lorsque ma condition est validé (cochage d'un bouton) la page php n est pas recompilée! donc si j arrivais a faire ca (je sais pas comment creer une variable php dans mon fichier tpl) il ne relancerait pas le script php, donc la condition ne serait pas franchie! je me trompe? |
|
Back to top |
|
arnogb69 Smarty Rookie
Joined: 07 May 2008 Posts: 11
|
Posted: Wed Aug 13, 2008 1:18 pm Post subject: |
|
|
Euh, je ne comprend pas trop ton problème en fait...
Tu pourrais mettre tes codes s'il te plait.
Tu coches une checkbox (?) donc ta page n'est pas recompilée car ton action s'effectue côté client, et n'a pas d'action côté serveur. Si tu veux une modification d'affichage avec des checkbox, il faut que tu te serves de javascript! |
|
Back to top |
|
chamalo Smarty Rookie
Joined: 22 Jul 2008 Posts: 12
|
Posted: Thu Aug 14, 2008 5:51 pm Post subject: |
|
|
Je crois que tu as tres bien compris mon probleme!
je coche une checkbox> smarty me change l affichage coté client
Mais cet affichage correspond a la validation de la commande coté serveur demandée.
J'ai utilisé le javascript pour gérer l'affichage du texte, mais étant donné que l'action est inteprété par le serveur au chargement de la page et non pas au moment ou la checkbox a été validée, mon action se produit meme si la checkbox n est pas coché!! (en gros ma checkbox ne sert a rien, c est pas le but)
Donc je me dis qu'il faudrait réussir a lancer une nouvelle page PHP, sans l'afficher mais juste en interprétant son code coté serveur! C est possible? |
|
Back to top |
|
mumuri Smarty Rookie
Joined: 06 Apr 2008 Posts: 27
|
Posted: Sun Sep 07, 2008 1:55 pm Post subject: |
|
|
je crois tu confond "compiler" et "mis en cache", car dans le code compilé ton if apparait (à toi de lui passer la bonne valeur)
si c'est effectivement le cas, il faut rendre ta page avec un $smarty->caching=false; |
|
Back to top |
|
djkost85 Smarty Rookie
Joined: 24 Dec 2008 Posts: 5
|
Posted: Wed Dec 24, 2008 2:22 pm Post subject: |
|
|
thank u |
|
Back to top |
|
|