[ar] [ca] [cpf] [de] [en] [es] [fr] [it]

Ce forum d’entraide est recommandé pour les utilisateurs et utilisatrices occasionnels de SPIP (Système de publication pour l’Internet). Avant de poser une question, faites une recherche sur ce site, consultez les liens utiles. Si vous ne trouvez pas de réponse, postez votre message dans la rubrique appropriée, avec un titre explicite.

Sujets : 24048 Sujets résolus :  39 %

42 visiteurs en ce moment


Accueil > Forums de discussion >  Création de squelettes > Passage de paramètres à un formulaire ?

Passage de paramètres à un formulaire ?

par Z - 20 avril 2010 16:05 - Réponse(s) : 7

Bonjour à toutes zé à tous,

Je voudrais utiliser le mécanisme des formulaires pour trier un tableau de résultats, en ayant ajouté à ma boucle
par #ENVtriinverse #ENVsenstri
Ainsi, je repasserais en champs cachés le contenu de tous les paramètres de ma boucle à l’origine de ce tableau, pour le pas perdre les paramètres de recherche.

J’ai 2 questions :
- Je dois pouvoir trier selon 3 champs différents, et dans les 2 sens (ascendant et descendant). Il serait idiot de faire 6 formulaires, alors qu’en lui passant mes 2 paramètres tri et senstri, je pourrais n’en faire qu’un seul, avec des tests à l’intérieur. Problème : impossible de lire un paramètre passé à un formulaire, avec par exemple : #FORMULAIRE_TRI#ENVtri,titre
Même question pour tous les critères de la boucle que je dois repasser en champ cachés, je ne les récupère pas dans le formulaire

- D’autre part, je ne comprends pas pourquoi le code généré de ce formulaire m’insère un affreux "titre1" qui sort de je ne sais où... Est-ce que ça vient du fait que mon submit est un bouton image ?

Le code du formulaire :

<form action='#ENV{action}#res' method='post'>
        #ACTION_FORMULAIRE{#ENV{action}}
        #ENV{tri,titre}
        #ENV{senstri,1}
        #ENV{idregion}
        #ENV{iddepartement}
        (...)
        <input type="image" src="[(#CHEMIN{images/asc.png})]" name="ascendant" value="ascendant" alt="Tri ascendant par titre" />
</form>

Merci de votre aide !
Z


  • Bonjour Z,
    Essaye de récupérer ta variable « senstri » avec un
    [(#EVAL_request(’senstri’))].

    Bonne continuation
    Cyril


  • Il faut lire :

    [(#EVAL{_request('senstri')})]

    ++
    Cyril


  • < #3 > Passage de paramètres à un formulaire ? ˆ
    par Z - 20 avril 2010 18:15

    Hello Cyril :-)

    Merci pour cette indication,
    J’ai testé ceci :
    - appel du formulaire avec :
    #FORMULAIRE_TRI{senstri=1}
    et
    #FORMULAIRE_TRI{#ENV{senstri,1}}

    - récupération de sa valeur dans un input :

    <input type="text" value="[(#EVAL{_request('senstri')})]" />

    Et aucune de ces combinaisons ne marchent :-(
    Est-ce qu’il y a quelque chose dans la syntaxe qui te paraît bizarre ?

    Et pour ce "titre1" qui apparaît dans mon formulaire, j’ai essayé de remplacer le bouton image par un submit normal, ça ne change rien, donc le problème ne vient pas de là ...

    Merci pour ton aide,

    Z


  • Essaye de passer la variable depuis le squelette, vers le formulaire, tout d’abord en l’initialisant ainsi dans le squelette appelant le formulaire :

    #SET{senstri='asc'}
    #FORMULAIRE_TRI

    Puis dans le formulaire « tri.html » lui même :

    [<h1>Controle ! Le sens de tri = (#EVAL{_request('senstri')})</h1>]

    Dès que ceci passera, tu pourra déclarer un nouveau #SET dans le formulaire, afin de manipuler « senstri » plus facilement :

    [(#SET{senstri, [(#EVAL{_request('senstri')})])]

    <h1>Le sens de tri est #GET{senstri}</h1>

    Tout au long de ta mise au point, tu peux afficher une petite fenêtre qui te détaillera ton environnement, ça te donnera des indications très utiles pour savoir comment se nomment les variables, et si SPIP les a prises en compte ou non ; copie/colle ceci dans ton squelette ou ton formulaire :

    <pre style="background:orange;color:black;position:fixed;top:0;left:0;text-align:left;padding:8px">
    [(#ENV**|unserialize|print_r{1})]
    </pre>

    Bon développement !
    ++
    Cyril


  • < #5 > Passage de paramètres à un formulaire ? ˆ
    par Z - 22 avril 2010 13:54

    Hello Cyril

    Merci ! J’aime bien ta petite fenêtre de débug !
    On avance à petits pas...
    Après des tests et des tests, j’arrive ENFIN à récupérer une valeur dans mon formulaire avec [(#EVAL{_request(xxx)})] (et sans passer d’argument explicite à #FORMULAIRE_TRI), dès lors que celle-ci se trouve dans l’environnement du squelette appelant.

    En revanche, impossible de récupérer une valeur explicitement positionnée avec #SET juste avant le formulaire. Cette variable reste désespérement vide... (jai aussi essayé #ENV{senstri,asc} sans succès).
    Des idées là dessus ???

    Mais je ne désespère pas !
    Et en tout cas, merci !!

    Z


  • Hello Z,

    Les variables mises en place avec #SET ne se transmettent pas vers les include ou les formulaires. C’est donc normal que ton #GET reste vide.

    En revanche le _request() (donc par là même le [(#EVAL{_request(xxx)})]) est une bonne manière d’aller chercher des variables : voir en ligne le chapitre idoine sur programmer SPIP.

    Bonne programmation,

    Cyril


  • < #7 Passage de paramètres à un formulaire ? ˆ
    par Z - 22 avril 2010 16:24

    Merci Cyril

    En fait, j’essayais de faire comme tu disais plus haut (dans le post #4) :

    #SET{xxx,valeur} dans l’appelant, et [(#EVAL{_request(xxx)})] dans le formulaire (je n’ai pas utilisé #GET). Mais en effet, ça ne passe pas non plus.

    Or il faudrait vraiment que j’arrive, d’une manière ou d’une autre à positionner tri et senstri si je veux factoriser mon formulaire.

    D’après ton article, _request peut aller récupérer des variables dans l’URL, c’est donc peut-être là qu’il faut que je place mes 2 variables, plutôt que dans mon squelette ? (même si je ne vois pas trop comment...)

    Sinon, je fais 6 formulaires en indiquant en dur le champ du tri et le sens... enfin, si j’arrive à supprimer ce "titre1" qui est toujours là, le bougre !

    Merci,

    Z




Répondre à la question

« Passage de paramètres à un formulaire ? »

Mots-clés

Vous pouvez étiqueter cette page de forum avec les mots-clés qui vous semblent les plus appropriés ; ils permettront aux prochains visiteurs du site de mieux se repérer :


Installation, mise à jour

Utilisation de l’espace privé

Administration, gestion, configuration du site

Créer ses squelettes

Qui êtes-vous ?

  • Rubriques

    par mailou
    23 mai 19:17

    Pas de réponse

    Bonjour, je souhaite créer une rubrique qui intégrerai le squelette d’un article "patronyme" est-ce possible et comment faire, merci

  • Taille des tableaux

    par AlexR
    23 mai 15:30

    Résolu - Réponse(s) : 6

    Bonjour bonjour, Stagiaire en détresse cherche du réconfort auprès de personnes mieux qualifiées que lui dans leur domaine ! Voilà, j’utilise SPIP afin de mettre en forme le site Internet de la (...)

  • Personnaliser Spip avec bootstrap.

    par Ajel
    22 mai 18:35

    Réponse(s) : 4

    Merci, J’essaye et je vous tiendrai au courant.

  • Modification modele pour la génération du texte dans certains articles

    par Tania
    21 mai 19:32

    Réponse(s) : 2

    Merci pour ta réponse gilles :) mais mon soucis ne se pose pas au sujet du modèle img ou doc mais du modèle qui génère le texte. Pourquoi ? Car la balise #TEXTE|reduire_image*,100 va insérer dans (...)

  • NULL dans un critère conditionnel ?=

    par Optarion
    19 mai 17:13

    Réponse(s) : 8

    Bon... je crois que ce problème restera sans suite malheureusement. Merci pour votre aide.

  • Intégration de Bootsrap 3 dans Spip 3

    par Amire
    13 mai 18:35

    Réponse(s) : 15

    Bonjour, Nous sommes en mai 2017. Il y a pas mal de chose qui a changé. Est ce qu’il y a un moyen de nous faire un tuto pour les novices comme moi. Dans le dossier bootstrap3 il y a bootstrap et (...)

  • Bootstrap + SPIP VS SPIPr

    par Amire
    13 mai 16:00

    Résolu - Réponse(s) : 5

    Bonjour, Je suis novice, est ce que vous pouvez m’indiquer les étapes à suivre pour personnaliser spip 3.1 en utilisant bootstrap svp ? Il y a beaucoup à lire sur Bootsrap, Less et c’est encore (...)

  • Afficher dans une rubrique les objets ayant le même mot-clef que la rubrique

    par Lucie
    13 mai 07:06

    Résolu - Réponse(s) : 1

    Hello, Après avoir beaucoup gambergé j’ai trouvé la boucle miracle ! Je me suis inspiré d’une noisette expliquée en détail de de façon très claire sur Contrib que voici : (...)

  • Documents-joints audio téléchargeables

    par Maja
    12 mai 14:53

    Résolu - Réponse(s) : 2

    Ca marche, merci beaucoup !

  • Des liens spéciaux dans spip ?

    par erational
    12 mai 10:12

    Résolu - Réponse(s) : 1

    Non, il s’agit simplement de chaines de langue qui permettent à SPIP de gérer toutes les langues Je te conseille de lire : https://programmer.spip.net/-Elements-linguistiques-

  • Messages : 29227
  • 8177 43 %
  • Poser une nouvelle question