IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] Optimisation d'un calendrier avec Ajax.


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 264
    Points : 52
    Points
    52
    Par défaut [AJAX] Optimisation d'un calendrier avec Ajax.
    Bonjour à tous,

    je ne connais pas du tous AJAX et je voudrais essayer d'optimiser mon calendrier avec un peu d'AJAX

    C'est à dire que j'ai un calendrier visible ici : Calendrier sur la page d'accueil

    Si vous regarder le calendrier vous pouvez voir :
    << Octobre 2008 >>
    Si vous cliquez sur "<<" ou ">>" ça va recharger la page pour afficher soit le mois suivant soit le mois précédent.

    Donc mon but et de ne plus recharger toute la page seulement pour changer de mois grâce à AJAX.

    Si quelqu'un pourrais m'aider se serait super sympa !

    Merci !

  2. #2
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    C'est à dire que j'ai un calendrier visible ici : Calendrier sur la page d'accueil
    Je reçois une erreur 403 quand je clique sur ton lien
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 264
    Points : 52
    Points
    52
    Par défaut
    Je sais merci à 1and1 de m'avoir bloqué mon compte...


    Tu peux le voir en page d'accueil on utilise tous les deux le même script de base.

  4. #4
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Tu connais un peu le principe d'AJAX, je suppose?

    - Tu places ton calendrier dans un conteneur (une DIV par exemple)

    - Tu écris un page PHP ou ASP qui génère le contenu de la DIV (les dates et les << et >> pour la navigation)

    - Tu écris la partie javascript qui récupère les paramètres du click sur les << et >>, crée l'objet XMLHttpRequest, POST les paramètres à la page PHP/ASP, lit la réponse envoyée par cette page et la place dans le conteneur.
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 264
    Points : 52
    Points
    52
    Par défaut
    Je vais essayer de voir ça.

    merci !

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 264
    Points : 52
    Points
    52
    Par défaut
    Voilà j'ai essayer mais la je bloque...

    J'ai fait comme ci-dessous et mon problème c'est que ça ne change rien... les données sont bien changé mais pas l'affichage du calendrier...

    Voir le calendrier : ICI

    Si vous cliquez sur les "<<" vous verrez :
    <a href="#" onclick="calendrier_ajax('10','2008');"><<</a> Novembre 2008 <a href="scriptcalendrier.php?mois=12&amp;annee=2008">>></a>

    donc le mois change bien : 10 mais la page ne change pas...

    Ma page scriptcalendrier.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?php
    // On vérifie si le mois rentré par le visiteur est bien valide, sinon on affiche le mois en cours
        if((empty($_GET["mois"]) || !is_numeric($_GET["mois"]) || $_GET["mois"]<=0 || $_GET["mois"]>12) && !isset($mois))
        {
        	$mois=date('m');
        }
        elseif(!empty($_GET["mois"]) && is_numeric($_GET["mois"]) && $_GET["mois"]>0 && $_GET["mois"]<=12 && !isset($mois))
        {	
        	// On rajoute un zéro devant le nombre du mois si c'est nécessaire
        	if(strlen($_GET["mois"])==1)
        	{
        		$mois='0'.$_GET["mois"];
        	}
        	else
        	{
        		$mois=$_GET["mois"];
        	}
        }
        elseif(isset($mois) && strlen($mois)==1)
        {
        	$mois='0'.$mois;
        }
     
    ...
    ?>
    J'ai fait une include du formulaire, appeler le formulaire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    if($mois!=01)
    {
    echo '<a href="#" onclick="calendrier_ajax(\''.($mois-1).'\',\''.$annee.'\');"><<</a> ';
    }
    ?>


    Voici ma page ajax :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    <script>
    function calendrier_ajax (mois,annee)
    {
    alert(mois+annee);
    	var xhr;
        try
    	{
    		xhr = new ActiveXObject('Msxml2.XMLHTTP');
    	}
        catch (e)
        {
            try
    		{
    			xhr = new ActiveXObject('Microsoft.XMLHTTP');
    		}
            catch (e2)
            {
              try
    		  {
    		  	xhr = new XMLHttpRequest();
    		  }
              catch (e3)
    		  {
    		  	xhr = false;
    		  }
            }
         }
     
        xhr.onreadystatechange  = function()
        { 
             if(xhr.readyState  == 4)
             {
                  if(xhr.status  == 200)
    			  { 
    				alert(xhr.responseText);
    				document.getElementById('box_calendrier').innerHTML=xhr.responseText; // <== tu met ton innerhtml
    			}
                  else 
                     alert('Erreur'); // <== tu ne fais rien
             }
        }; 
     
       xhr.open("GET", "scriptcalendrier.php",  true);  // <== ta page
       var data = "mois=" + mois +  "&annnee=" + annee;
       xhr.send(data);
    }
    </script>
    </head>
     
    <body>
    	<div id="box_calendrier">
    		<?php include 'scriptcalendrier.php'; ?>
    	</div>
    </body>
    Merci !

Discussions similaires

  1. [AJAX] utilisation d'un calendrier avec ajax
    Par cyreel dans le forum AJAX
    Réponses: 15
    Dernier message: 21/04/2010, 10h15
  2. [AJAX] ie fait des siennes avec ajax
    Par mitmit dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/05/2007, 16h16
  3. [AJAX] charger images du serveur avec ajax
    Par Tail dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 19/02/2007, 15h38
  4. Réponses: 3
    Dernier message: 21/11/2006, 15h28
  5. [AJAX] Appel de plusieurs pages avec Ajax
    Par shadowbob dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 13/02/2006, 19h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo