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 :

Formulaire d'inscription


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Avril 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Avril 2014
    Messages : 15
    Points : 13
    Points
    13
    Par défaut Formulaire d'inscription
    Bonjour,

    J’aimerais créer un site web pour mon mariage qui aura lieu prochainement. Le site est déjà bien en place mais je rencontre un problème pour lequel j’espère trouver une solution grâce à votre aide :

    Il y a un formulaire sur le site grâce auquel mes invités peuvent confirmer le choix du menu et leur présence. Evidemment, j’aimerais recevoir un mail quand un invité a rempli le formulaire.

    Malheureusement, je n’y arrive pas. Je travaille sur Dreamweaver. La page HTML du formulaire est en lien avec un fichier javascript. Tout me semble nickel au niveau du codage. Pourtant, quand l’invité clique sur le bouton « envoyer », rien ne se passe.

    Voici le code de la page HTML :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <!-- add comment -->
    <div class="add-comment contact-form">
        <div class="comment-form">
            <form action="#" method="post" id="reservationForm" id="commentForm"/>
     
            <div class="row field_text alignleft">
                <label class="label_title"><strong>PrEnom:</strong></label>
                <input type="text" name="prénom" id="prénom" value="" class="inputtext input_middle required"/>
            </div>
            <div class="row field_text alignleft omega">
                <label class="label_title"><strong>NOM:</strong></label>
                <input type="text" name="nom" id="nom" value="" class="inputtext input_middle required"/>
            </div>
            <div class="clear"></div>
            <div class="row field_text alignleft">
                <label class="label_title"><strong>Email:</strong></label>
                <input type="text" name="email" id="email" value="" class="inputtext input_middle required"/>
            </div>
            <div class="row field_text alignleft omega">
                <label class="label_title"><strong>TELEPhone:</strong></label>
                <input type="text" name="telephone" id="telephone" value="" class="inputtext input_middle required"/>
            </div>
            <div class="clear"></div>
            <div class="row alignleft input_styled inlinelist omega">
                <div class="rowRadio"><input type="radio" name="continent" value="radio_v1" id="radio_v1" checked=""/> <label for="radio_v1">OUI, JE VIENS</label></div>
                <div class="rowRadio"><input type="radio" name="continent" value="radio_v2" id="radio_v2"/> <label for="radio_v2">NON, JE NE VIENS PAS</label></div>
            </div>
            <div class="clear"></div>
            <div class="row rowSubmit">
                <input type="submit" class="btn-submit" id="send" formaction="mail@mail.com" formmethod="POST" value="Envoyer"/>
            </div>
            </form>
        </div>
    </div>
    <!--/add comment -->

    Voici le code du fichier javascript :

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    jQuery(document).ready(function(){
        tfuse_reservations_form();
    });
    function tfuse_reservations_form(){
        var my_error;
        jQuery("#send").bind("click", function(){
            my_error = false;
            jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").each(function(i){
                var surrounding_element = jQuery(this);
                var value = jQuery(this).attr("value");
                var check_for = jQuery(this).attr("id");
                var required = jQuery(this).hasClass("required");
                if(check_for == "email"){
                    surrounding_element.removeClass("error valid");
                    baseclases = surrounding_element.attr("class");
                    if(!value.match(/^\w[\w|\.|\-]+@\w[\w|\.|\-]+\.[a-zA-Z]{2,4}$/)){
                        surrounding_element.attr("class", baseclases).addClass("error");
                        my_error = true;
                    } else{
                        surrounding_element.attr("class", baseclases).addClass("valid");
                    }
                }
                if(required && check_for != "email"){
                    surrounding_element.removeClass("error valid");
                    baseclases = surrounding_element.attr("class");
                    if(value == ""){
                        surrounding_element.attr("class", baseclases).addClass("error");
                        my_error = true;
                    } else{
                        surrounding_element.attr("class", baseclases).addClass("valid");
                    }
                }
                if(jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").length == i + 1){
                    if(my_error == false){
                        jQuery("#reservationForm").slideUp(400);
                        var $datastring = "ajax=true";
                        jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").each(function(i){
                            var $name = jQuery(this).attr('name');
                            var $value = encodeURIComponent(jQuery(this).attr('value'));
                            $datastring = $datastring + "&" + $name + "=" + $value;
                        });
                        jQuery(".ajax_form #send").fadeOut(100);
                        jQuery.ajax({
                            type: "POST",
                            url: "./rsvp.php",
                            data: $datastring,
                            success: function(response){
                                jQuery("#reservationForm").before("<div class='ajaxresponse' style='display: none;'></div>");
                                jQuery(".ajaxresponse").html(response).slideDown(400);
                                jQuery("#reservationForm #send").fadeIn(400);
                                jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").val("");
                            }
                        });
                    }
                }
            });
            return false;
        });
    }
    Voici comment je les ai reliés dans Dreamweaver :



    Et enfin le visuel de la page en question :



    Je n'ai pas su où mettre l'adresse e-mail d'envoi dans le code Javascript. Autre chose, je m'étonne de voir un rsvp.php dans le code javascript alors que j'ai une page rsvp.html (celle du formulaire) et rsvp.js (celle du code java).

    Sur demande je peux vous transmettre les deux fichiers.

    Sauriez-vous me dire ce qui cloche ? Est-ce mieux de faire un formulaire PHP ?

    Merci d’avance 1000x, ça m’embêterait de ne pas pouvoir mettre cette page sur mon site !

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="#" method="post" id="reservationForm" id="commentForm"/>
    <form> n'a jamais été une balise autofermante...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Avril 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Avril 2014
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Merci pour la réponse !

    Mais à vrai dire ça ne me parle pas. Que faut-il mettre dans ce cas ?

    Encore merci !

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    <balise> balise ouvrante.
    </balise> balise fermante.
    <balise /> balise autofermante.

    Puisque <form> n'est pas une balise autofermante, il faut que tu la remplaces par une balise ouvrante...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Avril 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Avril 2014
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Merci, c'est plus clair, je n'ai pas le lexique HTML très bien en tête.

    Je vais tester cela ce soir et voir si ça change quelque chose, voire si ça résout le tout.

    Merci encore !

  6. #6
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Avril 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Avril 2014
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Merci à vous Bovino. J'ai contacté le site qui m'a vendu... le site et ils ont pu me trouver une solution. Merci encore et bon week-end !

Discussions similaires

  1. [MySQL] Quelqu'un pourrait il m'aider à vérifier mon formulaire d'inscription?
    Par Pepito2030 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/07/2006, 00h56
  2. [Newbie]*Formulaire d'inscription pour théâtre
    Par [Débutant]*Ludo dans le forum Access
    Réponses: 1
    Dernier message: 16/05/2006, 18h09
  3. Formulaire d'inscription
    Par ero-sennin dans le forum Langage
    Réponses: 3
    Dernier message: 29/01/2006, 19h23
  4. Creation d'un formulaire d'inscription
    Par whbh dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 21/01/2006, 14h04
  5. Formulaire d'inscription
    Par Gourouni dans le forum ASP
    Réponses: 6
    Dernier message: 02/12/2004, 16h28

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