Php ajax

@£e>< Messages postés 69 Statut Membre -  
@£e>< Messages postés 69 Statut Membre -
Bonjour,
Je souhaite afficher un listing de BDD sur le click d'un lien.
Le problème est que cela s'affiche nikel sous IE et FFox en local. Mais à partir du moment ou je place le tout sur un BDD mysql hebergé sur un serveur dans mon local informatique ca e fontionne plus....

auriez vous des idées???

Merci

PS : si besion je peux transmettre mes codes...
Configuration: Windows XP Internet Explorer 6.0

12 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    As tu modifié tes codes de connexion au serveur BDD ?
    0
  2. @£e>< Messages postés 69 Statut Membre
     
    Oui, mon code de connexion est bon...

    Petite précision, sous IE quand tu regarde en bas a droite de ta fenetre, c'est la que vient l'anomalie, il me met "Erreur sur la page" quand je fais appel a la fonction appelé par la click du lien. Par contre sous FFox, il se passe rien, dans la console d'erreur de FFox j'ai "getValeur() n'est pas deféini".... getvaleur étant la fonction appelé par mon click...

    Merci
    0
    1. pyschopathe Messages postés 2053 Statut Membre 137
       
      Où est-ce que tu as placé le code de getValeur ?
      0
  3. Alain_42 Messages postés 5413 Statut Membre 904
     
    donc tu as une erreur dans la fonction javascript getValeur()

    verifies bien les { }

    ou alors si elle est dans un fichier externe dans le src= est ce que tu as bien une adresse relative, pas une adresse absolue avec C:\.....
    0
  4. @£e>< Messages postés 69 Statut Membre
     
    le code getVlaleur est dans un fonction javascript dans mon source meme.

    ca ne peut pas provenir du serveur web et du sgbd ??
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Alain_42 Messages postés 5413 Statut Membre 904
     
    donnes nous le code de ta fonction getValeur()
    0
  7. @£e>< Messages postés 69 Statut Membre
     
    function getValeur()
    {
    creerRequete(); /* initalise la variable globale "requete" */

    var url = 'message.php' ;/* On définie l'url à appeller en passant cette valeur */

    requete.open('GET', url, true); /* Préparation d'une requête asynchrone de type GET */

    requete.onreadystatechange = function()
    {

    if(requete.readyState == 4)
    { /* 4 signifie que l'état est "complete" */
    if(requete.status == 200)
    { /* code HTTP si tout est ok */
    document.getElementById('zoneliste').innerHTML = requete.responseText; /* Traitement de la réponse, on met à jour notre span 'zoneMessage'*/
    }
    }
    };

    requete.send(null); /* Effectue la requête */
    }
    0
  8. Alain_42 Messages postés 5413 Statut Membre 904
     
    creerRequete(); /* initalise la variable globale "requete" */

    c'est un appel à une autre fonction

    existe -elle ?

    n'a -t-elle pas un pb ?

    donnes nous son code
    0
  9. jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
     
    c'est surtout ta variable requete
    c'est une variable globale, ou n'as tu pas oublié de l'initialiser en faisant
    requete=creerRequete();

    ?
    0
  10. @£e>< Messages postés 69 Statut Membre
     
    Voici mon code parti script: (desolé pour l'indentation)

    <script type="text/javascript">
    var requete = null;

    function creerRequete() {
    try {
    requete = new XMLHttpRequest(); /* On essaye de créer un objet XmlHTTPRequest */
    } catch (microsoft) {
    /* Microsoft utilise une autre technique, on tente de créer un objet ActiveX */
    try {
    requete = new ActiveXObject('Msxml2.XMLHTTP');
    } catch(autremicrosoft) {
    /* On en teste une autre méthode si la première n'a pas marchée */
    try {
    requete = new ActiveXObject('Microsoft.XMLHTTP');
    } catch(echec) {
    /* Si aucune méthode ne fonctionne, il ne reste plus qu'à mettre à jour le navigateur ! */
    requete = null;
    }
    }
    }
    if(requete == null) {
    alert('Votre navigateur ne semble pas supporter les objets XMLHttpRequest.');
    }
    }

    function getValeur() {
    creerRequete(); /* initalise la variable globale "requete" */

    var url = 'message.php' ;/* On définie l'url à appeller en passant cette valeur */

    requete.open('GET', url, true); /* Préparation d'une requête asynchrone de type GET */

    requete.onreadystatechange = function() {
    if(requete.readyState == 4) { /* 4 signifie que l'état est "complete" */
    if(requete.status == 200) { /* code HTTP si tout est ok */
    document.getElementById('zoneliste').innerHTML = requete.responseText; /* Traitement de la réponse, on met à jour notre span 'zoneMessage'*/
    }
    }
    };

    requete.send(null); /* Effectue la requête */
    }

    }
    </script>

    Voici mon code qui appel le script:
    <div>
    <font color=#014597 style=font-size:smaller><a href="javascript:getValeur()">Pour afficher une liste des maintenances sur ce matériel, cliquez ici ...</a></font>
    <span id="zoneliste">
    </span>

    </div>

    Et enfin code de la partie "message.php":
    <?php
    print("coucou");
    ?>

    Voilà, merci encore pour votre aide...
    0
  11. Alain_42 Messages postés 5413 Statut Membre 904
     
    esaye avec cette methode qui fonctionne chez moi, je n'ai pas testé ce script il peu tsubsister des erreurs de frappe

    je t'ai modifié le nom de la fonction getValeur est peut être un nom réservé ?

    <script type="text/javascript">
    function makeRequest(){
    	var requete = false;
    		//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
            if (window.XMLHttpRequest) { // Mozilla, Safari,...
                requete = new XMLHttpRequest();
                if (requete.overrideMimeType) {
                    requete.overrideMimeType('text/xml');//un appel de fonction supplémentaire pour écraser l'en-tête envoyé par le serveur, juste au cas où il ne s'agit pas de text/xml, pour certaines versions de navigateurs Mozilla
                }
            } else if (window.ActiveXObject) { // IE
                try {
                    requete = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    try {
                        requete = new ActiveXObject("Microsoft.XMLHTTP");
                    } catch (e) {}
                }
            }
    
            if (!requete) {
                alert('Abandon :( Impossible de créer une instance XMLHTTP');
                return false;
            }
    		  //affectation fonction appelée qd on recevra la reponse
            requete.onreadystatechange = function() { 
    				if(requete.readyState == 4) { /* 4 signifie que l'état est "complete" */
    					if(requete.status == 200) { /* code HTTP si tout est ok */
    						//TEST
    						alert("Reponse reçue: "+requete.responseText); //a oter ensuite
    						
    						document.getElementById('zoneliste').innerHTML = requete.responseText; /* Traitement de la réponse, on met à jour notre span 'zoneMessage'*/
    					}
    				}
    		  } 
    		// lancement de la requete		
    		var url = 'message.php' ;/* On définie l'url à appeller en passant cette valeur */
    
    		requete.open('GET', url, true); /* Préparation d'une requête asynchrone de type GET */
    
            requete.send(null);
    }
    </script>
    partie appel de la fonction AJAX
    <div>
    <font color=#014597 style="font-size:smaller"><a href="javascript:makeRequest()">Pour afficher une liste des maintenances sur ce matériel, cliquez ici ...</a></font>
    <span id="zoneliste">
    </span>
    
    </div>
    0
  12. Alain_42 Messages postés 5413 Statut Membre 904
     
    en complement:

    tu sais que tu peux passer une ou plusieurs valeurs au script php appellé par la requete ajax

    valeur lue dans un input ou un select
    0
  13. @£e&gt;&lt; Messages postés 69 Statut Membre
     
    Salut,

    Oui je sais j'essaie de le faire en ce moment.
    Pour mes problèmes d'erreur, c'est à ni rien comprendre ca fonctionne....Bizare de l'informatique encore!!
    0