Bonjours à tous !
Je suis freelance et je suis sur un projet de calendrier évènementiel.
Historique :
J'ai conçu ce calendrier en PHP !
J'ai codé le calendrier et tous va bien, sauf que ...
Il me reste deux petits boutons, qui servent à avancer ou reculer de 1 mois, si on ré-appuie sur le même bouton on se décale de 2 mois ou on reviens au mois actuel...
Ce que je veux :
C'est que quand j'appuie sur un bouton, avec un onClick par exemple, et un appel a une fonction qui changerai cette variable 'mois' de -1 ou 1 et rafraichirais ensuite la calendrier.
Bref voila le code PHP :
Après avoir peu être compris, je me suis dit que PHP ne correspond pas car c'est exécuté sur le serveur et donc immodifiable exécuté!
Donc je l'ai 're'fait.
Sans plus tarder le cOOde :
Code Javascript
Pas besoin de commentaire, c'est du copié/coller de PHP, du mois pour le principe...
Je bloque donc sur le fait de changer la variable 'mois' pour afficher le mois suivant/précédent.
Merci d'avance !
Dav
Modifié par D@vID (28 Oct 2011 - 23:01)
Je suis freelance et je suis sur un projet de calendrier évènementiel.
Historique :
J'ai conçu ce calendrier en PHP !
J'ai codé le calendrier et tous va bien, sauf que ...
Il me reste deux petits boutons, qui servent à avancer ou reculer de 1 mois, si on ré-appuie sur le même bouton on se décale de 2 mois ou on reviens au mois actuel...
Ce que je veux :
C'est que quand j'appuie sur un bouton, avec un onClick par exemple, et un appel a une fonction qui changerai cette variable 'mois' de -1 ou 1 et rafraichirais ensuite la calendrier.
Bref voila le code PHP :
<div id="calendrier">';//ma div calendrier
$jour = date("j");// entre 1 et 31
$mois = date("n")-$var;//entre 1 et 12
$annee = date("Y"); // 4 chiffre ex: 2011
$jour_num = date("N"); //entre 1 et 7
$nb_jour_mois= date("t");//nb jour dans le mois actuel
//variables string constante
$gris = "g";
$rouge="r";
$rougebold="rb";
$i=0;//compteur ...
$l=0;
$m=0;
echo '<img id="bouton-gauche" onClick="calendrier();" src="image/bouton-gauche.png">';//Mes deux boutons de la mort!
echo '<img id="bouton-droit" onClick="calendrier(\'1\');" src="image/bouton-droit.png">';
Après avoir peu être compris, je me suis dit que PHP ne correspond pas car c'est exécuté sur le serveur et donc immodifiable exécuté!
Donc je l'ai 're'fait.
Sans plus tarder le cOOde :
Code Javascript
<div id="calendrier">
<script type="text/javascript" langage="Javascript">
function Calendrier() {
this.moisActuel;
this.annee;
this.jour;
this.jour_num;
this.first_jour_num_mois;
this.gris;
this.rouge;
this.rougebold;
this.nbJourMois;
this.nbJourMoisPassee;
}
Calendrier.prototype.getNbJoursMois = function (mois,annee) {
var lgMois = new Array (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
if ((annee%4 == 0 && annee%100 != 0) || annee%400 == 0)
lgMois[1] += 1;
return lgMois[mois]; // 0 < mois <11
}
Calendrier.prototype.setMois = function(i) {
alert ("tetdezboob");
this.moisActuel = this.moisActuel + i;
}
Calendrier.prototype.refresh_calendrier = function(){
}
var Calendar = new Calendrier();
var date = new Date();
Calendar.moisActuel = date.getMonth();
Calendar.annee = date.getFullYear();
Calendar.jour = date.getDate();
Calendar.jour_num = date.getDay();
Calendar.nbJourMois = Calendar.getNbJoursMois(Calendar.moisActuel,Calendar.annee);
Calendar.nbJourMoisPassee = Calendar.getNbJoursMois(Calendar.moisActuel-1,Calendar.annee);
var date2 = new Date(Calendar.annee,Calendar.moisActuel,1);
Calendar.first_jour_num_mois = date2.getDay();
Calendar.rouge = "r";
Calendar.gris = "g";
Calendar.rougebold = "rb";
var i = 0;
var l = 0;
var m = 0;
document.write("<img id=\"bouton-gauche\" onClick=\"Calendrier.prototype.setMois('-1');\" src=\"image/bouton-gauche.png\">");
document.write("<img id=\"bouton-droit\" onClick=\"Calendrier.prototype.setMois('1');\" src=\"image/bouton-droit.png\">");
Pas besoin de commentaire, c'est du copié/coller de PHP, du mois pour le principe...
Je bloque donc sur le fait de changer la variable 'mois' pour afficher le mois suivant/précédent.
Merci d'avance !
Dav
Modifié par D@vID (28 Oct 2011 - 23:01)