IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[PEAR][HTML_QuickForm] Champ hidden dans HTML_QuickForm


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 25
    Par défaut [PEAR][HTML_QuickForm] Champ hidden dans HTML_QuickForm
    Voilà mon soucis ! Je souhaite créer un formulaire d'identification à l'aide de HTML_QuickForm ! J'y intègre un champ hidden ! Mais celui si n'est pas présent dans le Html généré !

    Voici mon code php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    require_once 'HTML/QuickForm.php';
    require_once 'HTML/QuickForm/Renderer/Tableless.php';
     
    $form =& new HTML_QuickForm("formIdent","post","login.php", null,null,true);
    $renderer =& new HTML_QuickForm_Renderer_Tableless();
     
    $form->addElement("text", "login", "login","title=\"Veuillez saisir votre login\"");
    $form->addElement("password", "passw", "mot de passe","title=\"Veuillez saisir votre mot de passe\"");
    $form->addElement('hidden', 'uri', 'uri','value="'.$_SERVER['REQUEST_URI'].'"');
    $form->addElement("submit", "bouton_envoyer", "envoyer","class=\"button\"");
    $form->removeAttribute('name');
    $form->accept($renderer);
    echo $renderer->toHtml();
    et le code HTML en sortie :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <form action="login.php" method="post" id="formIdent">
    	<div style="display: none;">
    <input id="_qf__formIdent" name="_qf__formIdent" type="hidden" value="" />
    <input value="uri" id="uri" name="uri" type="hidden" />
    	</div>
     
    	<fieldset class="hidden">
    		<ol>
    			<li><label for="login" class="element">login</label><div class="element"><input title="Veuillez saisir votre login" id="login" name="login" type="text" /></div></li>
    			<li><label for="passw" class="element">mot de passe</label><div class="element"><input title="Veuillez saisir votre mot de passe" id="passw" name="passw" type="password" /></div></li>
    			<li><label for="bouton_envoyer" class="element">&nbsp;</label><div class="element"><input class="button" id="bouton_envoyer" name="bouton_envoyer" value="envoyer" type="submit" /></div></li>
    		</ol>
    	</fieldset>
     
    </form>

    Je suis un peu perplexe ! je ne vois vraiment pas d'où vient le probleme !

    Merci d'avance de votre aide !

  2. #2
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 44
    Par défaut
    Remplacez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $form->addElement('hidden', 'uri', 'uri','value="'.$_SERVER['REQUEST_URI'].'"');
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $form->addElement('hidden', 'uri', $_SERVER['REQUEST_URI'], 'id="id"');

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 25
    Par défaut
    Merci de ta réponse !

    J'ai bien remplacé la ligne je me retrouve donc avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $form =& new HTML_QuickForm("formIdent","post","/~matthieu/script/login.php", null,null,true);
    $renderer =& new HTML_QuickForm_Renderer_Tableless();
     
    $form->addElement("text", "login", "login","title=\"Veuillez saisir votre login\"");
    $form->addElement("password", "passw", "mot de passe","title=\"Veuillez saisir votre mot de passe\"");
    $form->addElement('hidden', 'uri', $_SERVER['REQUEST_URI'], 'id="id"');
    $form->addElement("submit", "bouton_envoyer", "envoyer","class=\"button\"");
    $form->removeAttribute('name');
    $form->accept($renderer);
    echo $renderer->toHtml();
    Mais le résultat est identique et mon champs hidden n'est pas généré dans le code HTML ...

  4. #4
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 44
    Par défaut
    Bizarre effectivement

    Essayez sans passage d'attributs supplémentaires:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $form->addElement("hidden", 'uri', $_SERVER['REQUEST_URI']);

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 6
    Par défaut
    Bonjour ,

    Je me permets de remonter ce post étant donné que je rencontre les même difficultés :
    En effet, dans le code ci-dessous, l'élément hidden n'est jamais affiché quelque soit la syntaxe que j'utilise (quotes, simple quotes...), cependant si je remplace l'attribut 'hidden' par 'text', celui-ci est transmis et s'affiche...
    C'est à n'y rien comprendre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     $form2 = new HTML_QuickForm('common_form', 'POST', 'index.php');
                $form2->addElement('hidden', 'IDP', '123'); 
                $form2->addElement('submit', 'yes', 'Oui');
                $form2->addElement('button', 'no', 'Non');
     
                $renderer2 =& new HTML_QuickForm_Renderer_ArraySmarty($template);
     
                $form2->accept($renderer2);
     
                $template->assign('form_prompt', $renderer2->toArray());
    Auriez-vous une idée sur l'origine de l'erreur svp?
    J'ai déjà vérifier l'existence des fichiers correspondant à cet élément dans la bibliothèque...

  6. #6
    Nouveau candidat au Club
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Par défaut
    Bonjour,


    Je remonte ce post, je rencontre le meme probléme suite a une migration de serveur
    Avez vous solutionné ce probléme est comment?

    Merci

Discussions similaires

  1. AJouter un champs hidden dans un form puis soumettre me form
    Par Attrox dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/03/2009, 09h27
  2. Introduire la valeur de retour d'un js dans un champ hidden html
    Par delma dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 28/02/2008, 14h30
  3. récupérer plusieurs valeurs dans un champ hidden
    Par karimphp dans le forum Langage
    Réponses: 3
    Dernier message: 07/12/2006, 17h13
  4. remplir un formulaire qui se met dans un champ hidden
    Par cecileb dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 07/09/2005, 16h37
  5. Passage de paramètres dans champ hidden
    Par benassis dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/05/2005, 01h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo