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

 PHP Discussion :

Confirmation d'un formulaire avant de le valider [1.x]


Sujet :

PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 13
    Par défaut Confirmation d'un formulaire avant de le valider
    Bonjour à tous.

    Je suis actuellement stagière en Informatique pour valider mon diplôme de DUT.

    Mon application commence à bien fonctionner avec plusieurs formulaires associés etc..

    Ma question est le suivante :

    Est-il possible d'afficher une page de confirmation de saisie ( du style "Voulez vous ajouter cette nouvelle personne ? OUI / NON ) pour un formulaire d'ajout de personne par exemple.

    -> du même style que la confirmation lors de la suppression d'un enregistrement avec la méthode delete.

    Merci d'avance !

  2. #2
    Membre émérite Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Par défaut
    La page en question est un dialogue modal lancé en javascript. Tu peux donc intercepter l'événement 'onsubmit' de ton formulaire.

    Tu peux aussi, si le submit passe par un lien (et pas pas un <button type="submit">), fabriquer ta balise avec la fonction link_to en lui passant l'option confirm.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo link_to('Envoyer', '@submit_form', array('confirm' => "Voulez vous ajouter cette nouvelle personne ?"));

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 13
    Par défaut
    Merci pour cette réponse !

    J'ai effectivement constaté le paramètre 'confirm' pour un link-to...

    J'ai affaire ici à un bouton type submit.
    voici mon code pour confirmer le formulaire :
    Code : 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
    17
    18
    19
    20
    21
    22
     
    <?php  ?>
    <form action="<?php echo url_for('beneficiaire/'.($form->getObject()->isNew() ? 'create' : 'update').(!$form->getObject()->isNew() ? '?id='.$form->getObject()->getId() : '')) ?>" method="post" <?php $form->isMultipart() and print 'enctype="multipart/form-data" ' ?>>
    <?php if (!$form->getObject()->isNew()): ?>
    <input type="hidden" name="sf_method" value="put" />
    <?php endif; ?>
      <table id="seance_form">
        <tfoot>
          <tr>
            <td colspan="2" class="right">
     
              <?php //if (!$form->getObject()->isNew()): ?>
              <!--     <div class="bouton2"><?php //echo link_to('Supprimer', 'beneficiaire/delete?id='.$form->getObject()->getId(), array('method' => 'delete', 'confirm' => 'Etes vous sur de vouloir supprimer ce bénéficiaire ?')) ?> </div> -->
              <?php //endif; ?>
     
              <input  class= "bouton2" type="submit"  value="Valider" />
     
        <tbody>
          <?php echo $form ?>
        </tbody>
      </table>
    </form>
    Comment faire alors?

  4. #4
    Membre émérite Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Par défaut
    Intercepter l'évenement qui t'intéresse en javascript.

    - sur le formulaire: onsubmit
    - sur le bouton : onclick

    Ex. au niveau du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input class= "bouton2" type="submit" value="Valider" onclick="return confirm('Etes vous sur de vouloir supprimer ce bénéficiaire ?');"   />
    Sauf erreur de ma part, si l'utilisateur clique sur NON, la fonction confirm() renvoie false ce qui bloque la propagation de l'événement 'onclick', le formulaire ne devrait donc pas être soumis. S'il clique sur OUI, confirm() renvoie true et l'événement est normalement propagé et le formulaire est soumis.

    NB : encadre ton code dans les balises CODE, ce sera plus lisible

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 13
    Par défaut
    Merci pour la réponse !
    Ainsi que pour l'astuce des balises Je suis un nouveau des forums !

    cette solution marche !
    Et c'est aussi possible comme cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="<?php echo url_for('beneficiaire/'.($form->getObject()->isNew() ? 'create' : 'update').(!$form->getObject()->isNew() ? '?id='.$form->getObject()->getId() : '')) ?>" method="post" <?php $form->isMultipart() and print 'enctype="multipart/form-data" ' ?>onsubmit="return confirm('Voulez vous ajouter ce b&eacute;n&eacute;ficiaire ?')">
    Il fallait ajouter ceci dans la balise <form> :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     onsubmit="return confirm('Voulez vous ajouter ce b&eacute;n&eacute;ficiaire ?')"
    Voila !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Validation d'un champ de formulaire avant submit
    Par Rony Rauzduel dans le forum jQuery
    Réponses: 7
    Dernier message: 09/11/2012, 18h09
  2. Réponses: 3
    Dernier message: 21/09/2011, 18h12
  3. [Prototype] Valider un formulaire avant de lancer connexion
    Par amarcil dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 17/07/2008, 20h21
  4. Réponses: 2
    Dernier message: 26/07/2007, 10h41

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