Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Templates > Smarty
Smarty Forum d'entraide sur le moteur de templates Smarty. Avant de poster -> FAQ Smarty et Cours Smarty
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/04/2007, 12h50   #1
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1
Par défaut Formulaire et smarty

Bonjour à tous,

Voici le code suivant

code html:
Code :
1
2
3
4
5
6
7
8
 
<form method="post" action="/site/championnat.php">
      <select name ="division">
              {html_options values=$id_division options=$nom_division}
      </select>
</form>
<br>
Mon choix est : {$monchoix}
code php:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<?php
//incluion de la librairie
require_once('../smarty/libs/Smarty.class.php'); 
// Instanciation de l'objet Smarty
$smarty = new Smarty();
 
$choix =$_POST['division'];
 
$division = array ('Selection de la division','Division 1','Division 2','Division 3','Division 4');
$idendiv = array (0,1,2,3,4);
 
$smarty->assign('nom_division',$division);
$smarty->assign('id_division',$idendiv);
$smarty->assign('monchoix',$choix);
 
//instructions sql
.....
.....
 
// Affichage du template après compilation
$smarty->display('championnat.tpl');
?>

Voilà, en fait je voudrai récupérer la variable $choix qui devrait contenir logiquement (0,1,2,3 ou 4) pour ensuite l'utiliser dans une requete sql et afficher les résultats de celle-ci sur la meme page.
Le problème est que je ne récupère jamais la valeur du select dans mon code php.

Edit : J'ai beau chercher je ne trouve vraiment pas de solution. Si quelqu un peut m'éclairer.
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 15h08   #2
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1


Voici ce que donne la console de débugage lorsque je la lance :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Smarty Debug Console
included templates & config files (load time in seconds)
 
no templates included
assigned template variables
{$SCRIPT_NAME} 	"/site/championnat.php"
{$_smarty_debug_output} 	"html"
{$id_division} 	Array (5)
                                 0 => 0
                                 1 => 1
                                 2 => 2
                                 3 => 3
                                 4 => 4
{$monchoix} 	null
{$nom_division} 	Array (5)
                                 0 => "Selection de la division"
                                 1 => "Division 1"
                                 2 => "Division 2"
                                 3 => "Division 3"
                                 4 => "Division 4"
assigned config file variables (outer template scope)
{#files#} 	Array (0)
{#vars#} 	Array (0)
Si quelqu un a une idée ....
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 15h27   #3
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
Bonjour,
ce que tu appelles code html, c'est en fait championnat.tpl ?

Si oui, dans ton code php directement, fait un echo $choix, deja pour voir si tu as bien recuperé ton $_POST...

Sinon, ton probleme vient du formulaire précédant ton code php.

Sohnic
__________________
http://www.noctinfo.fr/

(\ _ /)
(='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
(")-(")
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 15h36   #4
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1
Citation:
ce que tu appelles code html, c'est en fait championnat.tpl ?
Tout à fait.

Citation:
Si oui, dans ton code php directement, fait un echo $choix, deja pour voir si tu as bien recuperé ton $_POST...
Je ne récupère rien via le $_POST, c'est justement ca le problème
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 15h43   #5
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
Et ton formulaire qui envoie ce $_POST est reloadé quand tu le soumets ? (ce que tu appelles code php c'est championnat.php ?)

Verifie le code source....

Perso j'écris output plutot que option dans le template :
{html_options values=$id_division output=$nom_division}

Sinon, il faut en dire plus sur tes articulations entre fichiers....

S.
__________________
http://www.noctinfo.fr/

(\ _ /)
(='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
(")-(")
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 16h06   #6
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1
Effectivement la page n'est pas "raffraichie" apres que l'utilisateur selectionne un élément du menu déroulant.

Citation:
ce que tu appelles code php c'est championnat.php ?
Oui

Mes fichiers se situent :
  • smarty
  • site
    • championnat.php
    • templates
      • championnat.tpl
    • templates_c
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 16h31   #7
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
J'ai du mal à tout comprendre.
Corrige-moi si je fais une erreur :
Tu appelles un formulaire championnat.php. Ce formulaire a pour mise en page le template championnat.tpl (ou est le bouton submit ?)
Quand tu soumets ton formulaire (en cliquant donc sur un submit que je ne vois pas), tu rappelles à nouveau championnat.php (dans ce cas, dans ta balise form le /site/ ne se justifie pas).

Tu me confirmes tout ca ?
__________________
http://www.noctinfo.fr/

(\ _ /)
(='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
(")-(")
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 16h39   #8
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1
Oui c'est bien ce que je veux faire. Effectivement sans submit, ....
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 18h40   #9
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
Désolée pour le temsp de réponse....

Il te faut surement un évènement javascript pour valider ton formulaire.... Je ne suis pas sure que Entree valide en soit. Ca doit simplement activer le bouton submit.... quand il existe.

Dans un premier temps met ce fameux bouton pour tester tes scripts et verifier que tout va bien, ensuite cherche une solution pour le substituer. Un problème à la fois !!

Sohnic
__________________
http://www.noctinfo.fr/

(\ _ /)
(='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
(")-(")
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 20h42   #10
Invité de passage
 
Inscription : avril 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 6
Points : 1
Points : 1
Merci
melymelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h10.


 
 
 
 
Partenaires

Hébergement Web