Je suis actuellement en train de concevoir un site de réservation d'hôtels. Jusqu'à là tout va pour le mieux, j'ai même mis le petit calendrier date d'arrivée date de départ. Pour le prix, j'ai prévu de fixer un prix par nuit (qui ne changera pas) et donc le total d'un séjour sera le nombre de nuits fois ce prix. Le soucis est que je ne vois pas comment écrire afin de calculer le nombre de nuitées automatiquement après que le client ait choisi ses dates (sans devoir cliquer sur "confermare", j'aimerais bien supprimer ce bouton). Il faudrait que le nombre de nuits total apparaissent à l'endroit où est écrit "nuits" à droite de prezzo. Puis, j'aimerais bien avoir une idée de comment intégrer la formule de calcul du séjour complet (prix pour une nuit * nbre de nuits).
PS: Les 150€ qui apparaissent c'est le prix de la chambre pour une seule nuit, je l'ai écrit au préalable. Et je pense supprimer la taxe (tasse). Désolée le site est en italien.
Je vous mets ce que j'ai fait. Merci d'avance pour vos réponses, aides etc
je déplace le sujet vers le forum JavaScript, car pour calculer et afficher des nombres de nuits à partir de deux dates, c'est ce langage qu'il te faudra utiliser
Pas d'aide concernant le code par MP, le forum est là pour ça :)
Juste deux petites pistes pour t'aider. Pour déclencher du code javascript au moment où l'on change la date sans que l'utilisateur est à cliquer sur un bouton, tu peux rajouter un attribut "onchange" sur chacun des tes input de type date : https://www.w3schools.com/jsref/event_onchange.asp Pour afficher le nombre de nuit dans la page dynamiquement, utilise par exemple les mots clefs "javascript modifier contenu div" dans un moteur de recherche tu devrais trouver des choses.
Merci beaucoup je m'y lance de suite. Avec l'aide de Lamecarlate j'ai pu calculer la différence de dates sauf qu'après j'ai constaté qu'il était quasiment impossible de mélanger java et php. Je voulais que ce soit automatique justement (comme sur les sites en général), je vais regarder ce que tu m'as dit. Encore merci !
Je mets quand même ce que j'ai pu trouver en java script. J'ai rajouté onchange mais j'avoue que j'ai un peu de mal par rapport aux dates, c'est un peu plus complexe que l'exemple du site avec juste une case texte.
Ceci dit, le site https://www.w3schools.com/jsref/event_onchange.asp est juste IN-CRO-YA-BLE !!! vraiment merci beaucoup, le système d'essai est juste génial, j'ai pu testé très facilement. Je pense que je devrais bientôt y arriver
Le problème dans ce codage est que je ne vois comment dire au java que les dates d'arrivée (d1) et de départ (d2) sont en faite les dates choisies plus haut et comment faire afficher automatiquement le résultat dans le carré nuit. Je regarde ce que tu m'as recommandé
<html lang="en">
<form action="calendrier1.php" method="POST">
<p><b> Choisissez vos dates </b></p>
<div class="form-group"><label for="exampleInputDInizio"> <p> Data di arriva: </p> </label>
<input type="date" name="dString" class="form-control" id="exampleInputDInizio" max="2018-12-31" min="2018-09-09" value="2018-09-09" required onchange="myFunction1(this.value)"></div>
<div class="form-group"><label for="exampleInputDInizio"> <p> Data di partenza </p> </label>
<input type="date" name="dStringg" class="form-control" id="exampleInputDInizio" max="2018-12-31" min="2018-09-09" value="2018-09-09" required onchange="myFunction2(this.value)"></div>
<br> Nombre nuits <input type="text"></form>
</html>
<br><br><br>
<script type="text/javascript">
var DateDiff = {
inDays: function(d1, d2) {
var t2 = d2.getTime();
var t1 = d1.getTime();
return parseInt((t2-t1)/(24*3600*1000));
}
}
var dString = "January, 1, 2018";
var dStringg = "February, 1, 2018";
var d1 = new Date(dString);
var d2 = new Date(dStringg);
document.write("<br />Number of <b>days</b> since "+dString+": "+DateDiff.inDays(d1, d2));
</script>
- Edité par Shanaellea 9 septembre 2018 à 14:59:30
Nombre de nuits hôtel
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Pas d'aide concernant le code par MP, le forum est là pour ça :)