Php ajax

@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention   -  
@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention   -
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...
A voir également:

12 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
As tu modifié tes codes de connexion au serveur BDD ?
0
@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention  
 
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
pyschopathe Messages postés 1974 Date d'inscription   Statut Membre Dernière intervention   135
 
Où est-ce que tu as placé le code de getValeur ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention  
 
le code getVlaleur est dans un fonction javascript dans mon source meme.

ca ne peut pas provenir du serveur web et du sgbd ??
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
donnes nous le code de ta fonction getValeur()
0
@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention  
 
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
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
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
@£e>< Messages postés 68 Date d'inscription   Statut Membre Dernière intervention  
 
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
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
@£e&gt;&lt; Messages postés 68 Date d'inscription   Statut Membre Dernière intervention  
 
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