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

jQuery Discussion :

Vérifier que le nombre d'inscrits n'est pas atteint avant la soumssion du formulaire


Sujet :

jQuery

  1. #1
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 23
    Points : 4
    Points
    4
    Par défaut Vérifier que le nombre d'inscrits n'est pas atteint avant la soumssion du formulaire
    Bonjour,

    J'ai un formulaire d'inscription à des évènements. Les inscriptions se font en 2 temps, d'abord un membre s'inscrit et ensuite il a la possibilité d'ajouté des invités.

    J'aimerais que pour certain évènement il y ai un nombre maximum d'inscription. Je vois bien comment faire la vérification côté PHP mais côté JS, j'ai un peu plus de mal surtout en ce qui concerne les invités. Mon formulaire pour les invités dispose d'un champ nom , prénom et nom de l'entreprise . Il y a également un bouton + pour rajouter une ligne pour un invité supplémentaire. Je voudrais qu' à chaqhe fois que qq1 click sur le bouton + on compare le nombre d'inscrit et le nombre maximum de participannt et si celui-ci est atteint un message d'erreur est revoyé et la ligne ne se rajoute pas.

    Pour avoir la somme des inscrits, j'ai ceci


    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT (count(idact) + Sum(NbInvit)) as invter
      FROM Nomdematable
      where idact=10 and IDLIBPRE=1

    En sachant que la valeur idact est l'id de chaque event et est donc amené à changer.

    Pour le nombremax d'inscrit il s'agit d'un select. J'imagine que je dois me pencher vers l'ajax mais je ne vois pas très bien comment récupérer les 2 valeurs une fois le script ajax lancé afin de les comparer et d'autoriser ou non la soumission du formulaire.

    Pouvez-vous m'aider svp

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 407
    Points : 4 847
    Points
    4 847
    Par défaut
    puisque tu passes par php, pourquoi alors ne pas attribuer une variable, dans laquelle tu stockes toutes les invitations relatives puis tu récupères cette variable dans un success d'ajax et l'utiliser comme tu veux?

  3. #3
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 23
    Points : 4
    Points
    4
    Par défaut
    Tu veux dire stocker le nombre max d'inscrits et le nombre d'inscrit dans des variables php et les utiliser avec ajax ? Car c'est justement ça qui me pose problème, je vois pas trop comment faire pour les utiliser avec ajax

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    d'abord un membre s'inscrit et ensuite il a la possibilité d'ajouté des invités
    il te faut donc bien mettre en base la donnée « nombre invités ».

    Tu réalises une requête pour connaitre si il est autorisé à avoir d'autres invités si oui pas de soucis si non tu bloques.

  5. #5
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 23
    Points : 4
    Points
    4
    Par défaut
    Je gère déja le nombre d'invités/membre mais ce que je cherche à faire ici c'est gérer le nombre total de participant.
    exemple un membre à droit à 2 invités pour un total de 100 participants.

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    mais ce que je cherche à faire ici c'est gérer le nombre total de participant.
    je verrais quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    NBR_MAX_PARTICIPANTS = 100
    get -> NBR_PARTICIPANTS
    get -> NBR_INVITE_ABONNE
    set -> NBR_PLACES_RESTANTES = NBR_MAX_PARTICIPANTS - NBR_PARTICIPANTS -1
     
    SI NBR_PLACES_RESTANTES > 0 ALORS
      SI NBR_INVITE_ABONNE < 3 ALORS
       envoi -> "OK pour invitation"  
      SINON  
       envoi -> "NOK pas de nouvel invité autorisé"  
      FINSI
    SINON
      envoi -> "plus de place"
    FIN SI

  7. #7
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 23
    Points : 4
    Points
    4
    Par défaut
    Ok mais comment puis je faire pour que quand on click sur un bouton
    il relance cette requete SQL afin de calculer le nombre de place prise
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT (count(idact) + Sum(NbInvit)) as invter
      FROM Nomdematable
      where idact=10 and IDLIBPRE=1

    C'est l"association SQL/Jquery que je ne sais pas trop comment gérer

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Comme de toute façon tu dois soumettre le formulaire ... donc ce n'est pas AVANT l'envoi du formulaire, mais lors de l'arrivée sur la page de traitement.
    Sinon il suffit de ne pas proposer le formulaire d'inscription lorsque le max est atteint ...

    LORS de l'envoi du formulaire, il suffit sur la page de traitement du form de commencer par la vérification du nombre d'inscrits puis selon le résultats comme le suggère noSmo:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    récup nbre inscrits (requête sut base)
    var placelibre =  test si max atteint  
     
    SI placelibre {
      inscription + retour "OK inscription faite"
     }
    SI non (else){
       retour   "désolé plus de place"
    }


    Une autre possibilité est de lancer dans un setinterval un ajax qui vérifie le nombre d'inscrit, et retourne true ou false qu'il suffira d'appliquer à l'enabled du bouton submit. Mais cela ne t'épargera pas une contre-vérification du nombre d'inscrits au moment de la soumission du formulaire car l'utilisateur peut très bien réactiver le bouton coté client ...
    le retour peut être par exempel un header location vers un page "ok" ou "not ok" ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

Discussions similaires

  1. [XL-2010] Supprimer un espace dans un nombre qui n'en est pas un !
    Par brunop3165 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 03/06/2014, 11h42
  2. Vérifier que l'Oracle Workspace Manager n'est pas utilisé
    Par FSiebert dans le forum Administration
    Réponses: 1
    Dernier message: 11/10/2012, 17h27
  3. [AJAX] Nombre qui n'en est pas un
    Par fred1270 dans le forum AJAX
    Réponses: 8
    Dernier message: 06/07/2010, 09h33
  4. Réponses: 1
    Dernier message: 31/05/2009, 09h11
  5. Réponses: 10
    Dernier message: 30/11/2004, 10h12

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