× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum des Webmasters
 Site de mariage - Formulaire d'inscription
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
cimbombom
  Posté le 11/04/2014 @ 12:53 
Aller en bas de la page 
Nouvel astucien

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 :

<!-- 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 :

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 !



Modifié par cimbombom le 11/04/2014 12:56
Publicité
y.bli
 Posté le 11/04/2014 à 17:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Message original par cimbombom

Est-ce mieux de faire un formulaire PHP ?

Bonjour,

Je ne sais pas ce qui est le mieux... ce que je sais c'est que je peux t'aider en PHP mais pas en JAVA.

@+

elle
 Posté le 11/04/2014 à 18:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grande Maîtresse astucienne

Ben déjà ici, faut mettre une adresse de page, non?


<form action="reservations.php"> ou autre...



Modifié par elle le 11/04/2014 18:16
elle
 Posté le 11/04/2014 à 18:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grande Maîtresse astucienne

y.bli a écrit :

ce que je sais c'est que je peux t'aider en PHP mais pas en JAVA.

JavaScript!

cimbombom
 Posté le 11/04/2014 à 18:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Merci à vous 2.

J'ai réussi grâce à l'aide de quelqu'un que je remercie s'il me lit à sortir un code PHP.

Le problème réside maintenant à l'intégrer dans mon design.

Si je colle le code entier à l'endroit où j'aimerais que le formulaire soit, ça me défonce toute la structure.

Quelqu'un saurait m'aider ?

Désolé pour les cheveux blancs pour ceux qu'y s'y colleraient.

y.bli
 Posté le 12/04/2014 à 09:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien
elle a écrit :

JavaScript!

Évidemment, mais j'ai repris la formulation employée par cimbombom

@+

cimbombom
 Posté le 12/04/2014 à 10:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Merci à tous. 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 !

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
97,99 €Pack Gaming Corsair (casque HS50 + clavier K55 RGB + souris Harpoon RGB Pro + tapis MM100) à 97,99 €
Valable jusqu'au 27 Septembre

RueDuCommerce fait une belle promotion sur l'Essential Gaming Bundle de Corsair qui passe à 97,99 € alors qu'on le trouve ailleurs à partir de 130 €. Ce pack comporte un casque filaire HS50, un clavier K55 RGB, une souris Harpoon RGB Pro et un tapis de souris MM100. Tout pour équiper un PC de joueur.


> Voir l'offre
69,99 €Disque dur Toshiba P300 3 To à 69,99 €
Valable jusqu'au 28 Septembre

Amazon propose actuellement le disque dur Toshiba P300 3 To à 69,99 € livré gratuitement. On le trouve ailleurs à partir de 90 €. Ce disque dur interne de 3 To est SATA 6 Gbps, possède 64Mo de cache et dispose d'une vitesse de rotation de 7200 tpm.


> Voir l'offre
17,90 €Set de 30 lames bois et métal Bosch pour scies sauteuses + boite à 17,90 €
Valable jusqu'au 28 Septembre

Amazon fait une promotion sur le set de 30 lames bois et métal Bosch pour scies sauteuses avec leur boite de rangement à 17,90 €. On trouve l'ensemble ailleurs à partir de 36 €. Les lames portent les références T119BO, T111C et T118A (10 lames de chaque).


> Voir l'offre

Sujets relatifs
inscription à une manif via un site
php: Formulaire d'inscription
Permettre inscription sur un site
Inscription automatique dans un site
Formulaire inscription -> mail + contenu
Formulaire de demande de devis pour site internet.
Amélioration envoi-réception formulaire mon site
Création d1 formulaire sur site sans passer par OE
formulaire email dans site crée sous dreramweaver8
Problème de formulaire dans mon site
Plus de sujets relatifs à Site de mariage - Formulaire d''inscription
 > Tous les forums > Forum Forum des Webmasters