11548 sujets

JavaScript, DOM et API Web HTML5

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 :

	<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)
Je ré explique mon problème :
Ce que j'aimerai faire en Php ou js peu importe, c'est qu'en appuyant sur un bouton : ou plutôt une div avec une image de bouton, c'est qu'en cliquant dessus on incrémente une variable, 'mois' pour afficher le mois suivant.
Car 'mois' contient le mois actuel entre 1 et 12...

Si ce n'est pas assez clair, dites moi quel point je doit éclaircir.
Bonne après midi les loulous!