Incrémenter une date dans un date-picker ? [Résolu]

Messages postés
4
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
6 février 2008
- - Dernière réponse : francois135
Messages postés
4
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
6 février 2008
- 6 févr. 2008 à 16:45
Bonjour à tous,

Comme l'indique ma signature je suis un gros débutant, excusez mon incompétence..et mon ignorance..

Mon problème :

J'ai un site de location d'appartements. Il se trouve que la réservation se fait par un simple formulaire php, qui envoie un simple mail au gérant.
Le problème est que les gens se trompent souvent dans les dates de leur séjour.

Vous imaginez bien le type de formulaire :

Du .. /.. /..  Au .. /.. /..
La sélection des dates se fait par un petit script date-picker.js donc petit calendrier qui apparait, tout ça..

Ma Question :
Est il possible, comme ça, à vue de nez, de faire en sorte que la date finale ( Au .. /.. /..) soit automatiquement à J+7 de la date de départ ?!

Je vous remercie par avance de votre aide, ça m'enlèverait une sacrée épine du pied, étant TOTALEMENT inculte en java.
Cordialement,

Fanf

Gros débutant..
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
469
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
20 février 2017
4
3
Merci
Bien le bonjour, pour répondre à ta question oui comme ça à vue de nez, c'est possible !
Bon, si tu veux une réponse plus propre, c'est même très possible, il aurait été sympatique que tu fournisses un petit bout de code, je présume (ou plutôt j'espère) que tu as fait quelques recherches, mais bon !
voilà à quoi cela pourrait ressembler
<html>
    <head>
        <title>Et si on ajoutait 7 jours à une date ?
        </title>
        <script>
            Date.prototype.addDay = function (_num){
                return new Date(this.getTime() + _num * 86400000);
               
            }
            function testDate(){
                var _date = new Date();
                alert ( _date.addDay    (7));
            }
        </script>
    </head>
   
   
</html>

à adapter il va s'en dire !

[o-_-o]

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 142 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Zobibol
Messages postés
469
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
20 février 2017
4
3
Merci
Le plus simple (?) c'est de le mettre sur l'évenement onblur (ou onChange ?) du champ


datearrivee
voilà à quoi cela pourrait ressembler (j'ai épuré ton code pour éviter les erreurs)
<html>
<head>
<title>Et si on ajoutait 7 jours à une date ?
</title>
<script>
Date.prototype.addDay = function (_num){
return new Date(this.getTime() + _num * 86400000);

}

function addDateDay(_obj){
var _date = new Date(_obj.value);
var _endDate = _date.addDay (7);
document.getElementById("datedepart").value = _endDate.getDate() + "/" + _endDate.getMonth()+1 + "/" + _endDate.getFullYear();
}
</script>
</head>

P&eacute;riode
souhait&eacute;e (1) * :,
<td nowrap=\"nowrap\">du

au

</html>






[o-_-o]

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 142 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Zobibol
Messages postés
4
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
6 février 2008
3
Merci
Voici donc le code "final" que Zobibol m'a donné :

        <script>
/**
* Prototype de date
*
* méthode addDay
* Ajoute un nombre de jour à la date.
*
* @param _num
* Nombre de jour à rajouter
* @return Retourne une nouvelle date.
*/
Date.prototype.addDay = function (_num){
return new Date(this.getTime() + _num * 86400000);

}

/**
* Ajout d'un nombre de jour à une date.
*
* @param _obj
* champ contenant la date.
*/
function addDateDay(_obj){
if ( _obj.value !=null){
var splitSlash = _obj.value.split("\/");
var _date = new Date();
_date.setMonth(splitSlash[1]-1);
_date.setFullYear(splitSlash[2]);
_date.setDate(splitSlash[0]);
var _endDate =  _date.addDay (7);
var dayOfMonth = (_endDate.getDate()<10) ? "0" + _endDate.getDate() : _endDate.getDate();
var month = ((_endDate.getMonth()+1)<10) ? "0" + (_endDate.getMonth()+1) : (_endDate.getMonth()+1);
document.getElementById("datedepart").value = dayOfMonth + "/" + month  + "/" + _endDate.getFullYear();
}
}

</script>

Et du côté du formulaire :

          &nbsp;[javascript:show_calendar('formreserv.datearrivee'); ]
         

au
           

Le remerciant encore pour cette aide précieuse..  

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 142 internautes nous ont dit merci ce mois-ci

Commenter la réponse de francois135
Messages postés
4
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
6 février 2008
0
Merci
Merci Zobibol,

Et merci pour ton élément de réponse, je vais étudier la question.. Bien sur j'ai fait des recherches, mais vraiment, quand on connait pas c'est dur finalement lol
Donc voici des éléments supplémentaires :
Ma page php : (juste le ptit bout du formulaire, le reste n'a pas beaucoup d'importance je pense..)

<tr>

<td> P&eacute;riode
souhait&eacute;e (1) <span style="color:#ff8205;">*</span> :</td>
<td nowrap="nowrap">du
<input name="datearrivee" type="text" id="datearrivee" size="10">&nbsp;<a href="javascript:show_calendar('formreserv.datearrivee');" onMouseOver="window.status='Date Picker'.focus();return true;" onMouseOut="window.status=''.focus();return true;"><img src="show-calendar.gif" width=19 height=20 border=0 align="absmiddle"></a><br />
<br />
au
<input name="datedepart" type="text" id="datedepart" size="10">&nbsp;<a href="javascript:show_calendar('formreserv.datedepart');" onMouseOver="window.status='Date Picker'.focus();return true;" onMouseOut="window.status=''.focus();return true;"><img src="show-calendar.gif" width=19 height=20 border=0 align="absmiddle"></a></td>

</tr>

Je sais pas en fait... où je dois placer une éventuelle modification de code pour lancer ce changement de date..
Je crois que je m'exprime très mal..

Gros débutant..
Commenter la réponse de francois135
Messages postés
4
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
6 février 2008
0
Merci
Excellent, excellent !
Il reste un tout petit détail, mais je vais t'embêter en message privé je crois !
Merci beaucoup !

Gros débutant..
Commenter la réponse de francois135