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 :

Un site tout en ajax et les fonctions javascript ?


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Inscrit en
    Mai 2007
    Messages
    65
    D�tails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par d�faut Un site tout en ajax et les fonctions javascript ?
    Salut

    J'essai de developper un site tout en Ajax, qui est cens� ne jamais se recharger, je passe donc par plusieurs fonction que voici :

    Les fonctions javascript
    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
     function file(fichier, mode){
    	if(mode == "undefined"){
    	 mode = "XML";
    	}
    	if(window.XMLHttpRequest) // FIREFOX
    	xhr_object = new XMLHttpRequest();
    	else if(window.ActiveXObject) // IE
    	xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    	else
    	return(false);
    	xhr_object.open("GET", fichier, false);
     
    	xhr_object.send(null);
     
    	if(xhr_object.readyState == 4) {
    		if(mode == "XML"){
    			return(xhr_object.responseXML);
    		} else {
    			return(xhr_object.responseText);
    		}
    	} else {
    	return(false);
    	}
     }
     
     function moteur(URL){
    	document.getElementById("corpsDuSite").innerHTML = file(URL,"text");
     }
    L'appelle d'une fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
     <a href='#' onClick="moteur('moteur.php?page=accueil');">Retour à l'accueil</a>
    La page moteur.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
    <?php
    include('scripts/include.php');
     
    if(isset($_GET['page']))
    {
            switch($_GET['page'])
            {
                    case'admin/accueil':include('admin/accueil.php');break;
                    case'admin/formLive':include('admin/formLive.php');break;
                    case'reunion':include('reunion.php');break;
                    case'live':include('live.php');break;
                    default:include('accueil.php');
            }
    }
    else 
    {
            include('accueil.php');
    }
     
    ?>
    Et enfin je charge un page, voici un exemple :

    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
     
    <script>
    function test(){
    	alert('ça marche!');
    }
    </script>
    <table border='1'>
    	<tbody id="reunion">
    		<tr>
    			<th width='300'>Lieu</th><th>Date</th><th>Heure</th>
    		</tr>
    		<?php
                            $i=0;
                            $reunion1 = requete("select numReunion, lieu, DATE_FORMAT(date,'%d/%m/%Y') as date, DATE_FORMAT(date,'%H:%i') as heure from _jourj_Reunions order by numReunion asc");
                            while($reunion = mysql_fetch_object($reunion1)){
                                    echo "<tr id='".$reunion->numReunion."'>\n";
                                            $nbMessage1 = requete("select * from _jourj_MessagesLive where numReunion=".$reunion->numReunion);
                                            $nbMessage = mysql_num_rows($nbMessage1);
                                            if($nbMessage != 0){
                                                    echo "<td><a href='#' onClick='moteur(\"moteur.php?page=live&numReunion=".$reunion->numReunion."\")'>".$reunion->lieu."</a></td>\n";
                                            } else {
                                                    echo "<td>".$reunion->lieu."</td>\n";
                                            }
                                            echo "<td><a href='#' onClick='test()'>".$reunion->date."</a></td>\n";
                                            echo "<td >".$reunion->heure."</td>\n";
                                    echo "</tr>\n";
                                    $i++;
                            }
                    ?>
    	</tbody>
    </table>
    Sur la derni�re page, quand on clique sur la date. La fonction "test()" devrai r�agir, sauf qu'elle � �t� inclue en javascript dans ma div corpsDuSite et donc il doit lui manquer une sorte de compilation, le navigateur me revoit "test is not defined". J'ai j'ai la solution de charger toute les fonctions javascript d�s le 1er chargement mais ne me plais qu'a moiti�. D�j� �a peut faire crade comme codage et en + �a va mettre du temps � tout charger lors du 1er chargement.

    Y a t'il un moyen "compiler" les fonctions incluse avec cette ligne : document.getElementById("corpsDuSite").innerHTML = file(URL,"text"); ?

    Merci d'avance !

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    il faut inhiber le href ...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <a href='#' onClick="moteur('moteur.php?page=accueil');return fasle">
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  3. #3
    Membre confirm�
    Inscrit en
    Mai 2007
    Messages
    65
    D�tails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par d�faut
    �a change rien au probl�me...

  4. #4
    Membre confirm�
    Inscrit en
    Mai 2007
    Messages
    65
    D�tails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par d�faut
    Vous pensez quoi de faire un site tout en ajax? Est-ce que c'est vraiment utile ou c'est juste une source de complication sans grand int�r�t?

  5. #5
    Membre �m�rite
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    D�tails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activit� : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Par d�faut
    si c'est un site grand public et non une application, c'est une perte de temps et d'effort.

    Ya deja pas mal d'article dessus : pour ou contre ajax.

    Les principaux points :
    Tu perds la possibilite de garder les pages en favoris.
    Les refresh via le navigateur ne fonctionneront pas.
    Et surement d'autre soucis javascript et php.

    Z.

  6. #6
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    �a permet tout de m�me d'�muler pauvrement php/mysql lorsque l'h�bergeur n'autorise pas de langage serveur ...

    Pour ce qui est des favoris, on peut tout de m�me bookmarquer la page d'accueil !


    Sinon c'est la grande mode de vouloir �valuer les fonctions
    http://www.developpez.net/forums/sho...d.php?t=584846

    Pour ma part je consid�re que c'est une erreur de conception de site !
    Les fonctions doivent exister, ajax recup�rant les param�tres...
    Dans le post cit�, le cas est un peu particulier, c'est une reprise de site ...
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

Discussions similaires

  1. retrouver un �l�ment ajout� avec les fonction javascript-DOM
    Par adilsoft dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 27/02/2010, 16h16
  2. Impossible d'int�grer de l'ajax dans ma fonction javascript
    Par mioke dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 19/05/2009, 17h15
  3. [AJAX] Ajax, innerHTML et fonction javascript - solution ?
    Par gouroulubrik dans le forum G�n�ral JavaScript
    R�ponses: 8
    Dernier message: 25/03/2008, 21h35
  4. [AJAX] Acces aux donn�es avec ajax dans une fonction javascript
    Par Sidi-Bou dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 03/03/2008, 12h04
  5. [AJAX] Appel de fonction javascript
    Par slaborde dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 29/05/2006, 19h43

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