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 :

Images et requêtes impossible


Sujet :

JavaScript

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut Images et requêtes impossible
    Bonjour à tous,

    Je suis en train de faire de l'AJAX (enfin j'essaye) mon module fonctionne correctement cependant je veut qu'une fois que je clique sur une image l'implémentation JAVASCRIPT prend le relais et affiche une autre image a la place de la première:

    Mon code JS est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function Supp(id) 
    {	
    	document.images["img_"+id].src ="_pics/faux.png";
    	var http_request = false;
    	var url = "suppr.php?id=" + id ;
    	Request(http_request,url,id);	
    }
    La pour le moment cela ne fonctionne pas, ca ne met rien, mais si je met les variables et la requete en commentaire mon image s'affiche correctement .
    Y à t-il une autre structure de code JS à utiliser?
    Est ce que c'est "incompatible" ?

    Merci pour votre aide .

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    tout dépend de ta fonction Request() ...
    C'est certainement elle qui plante le reste.

    A+

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    en effet il me semble que c'est cela , mais existe t-il une autre fonction pour injecter une images dans du html ?

    Pour infos voila mon code js entier:
    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
    56
    57
    58
    function Supp(id) 
    {	
    	document.images["img_"+id].src ="_pics/faux.png";
    	var http_request = false;
    	var url = "suppr.php?id=" + id ;
    	Request(http_request,url,id);	
    }
    function Auto(id) 
    {
    	document.images["img_"+id].src='_pics/chek.png';
    	var http_request = false;
    	var url = "autorise.php?id=" + id ; 
    	Request(http_request,url,id);	
    }
     
    function Request(http_request,url,id)
    {
     
    	if (window.XMLHttpRequest) 
    	{ // Mozilla, Safari,...
    		http_request = new XMLHttpRequest();
    		if (http_request.overrideMimeType) 
    			{http_request.overrideMimeType('text/xml');}
    	} 
    		else if (window.ActiveXObject) 
    		{ // IE
    		try {
    			http_request = new ActiveXObject("Msxml2.XMLHTTP");
    		} catch (e) {
    			try {
    				http_request = new ActiveXObject("Microsoft.XMLHTTP");
    			} catch (e) {}
    		}
    	}
     
    	if (!http_request) 
    	{
    		alert('Abandon :( Impossible de créer une instance XMLHTTP');
    		return false;
    	}
    	http_request.onreadystatechange = function() { alertContents(http_request,id); };
    	http_request.open('GET', url, true);
    	http_request.send(null);
     
    }
     
    function alertContents(http_request,id) 
    {
    	if (http_request.readyState == 4) 
    	{
    		if (http_request.status == 200)
    		{
    			document.getElementById('etat_'+id).innerHTML = http_request.responseText;	
    		}
    		else 
    			{alert('Un problème est survenu avec la requête.');	}
    	}
    }

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Enlève déjà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var http_request=false;
    parce que là, tu en fait un booléen, alors que tu en as besoin comme XMLHttpRequest.
    Conflit de types ...

    A+

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    En effet la cause a toujours sa consequence donc j'ai enlevé ce que tu m'a conseillé, et ca marche plus ou moins car mon image s'affiche (comme quand je m'etait l'appel a request en //).

    Il faut bien remplacer ce :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var http_request = false;
    Par quelque chose car maintenant il dit :
    http_request : est indéfini
    J'ai essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var http_request = null;
    Mais maintenant ma requete est ok mais pas mon image

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Tu n'as tout simplement plus besoin de le passer en paramètre, puisque c'est la fonction Request() qui le définit

    A+

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    En effet je ne sais pas pourquoi je m'entête a vouloir mettre des prametres partout mêm quand il n'y en à pas besoin...
    Toujour est-il que ne comprend pas pourquoi mon image s'affiche 1/2 secondes puis disparait

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Ton images["img_"+id] ne serait pas contenu dans 'etat_'+id, des fois ?

    A+

  9. #9
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    En fait c'est une image qui fait le lien avec le js :Mais je doit dire que je pattauge dans mon propre code !

    Voici le code PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    print("<TD align='Center'>");
    		print("<div id='etat_$item_key'>");
     
    		if ($item_Autorise == "O")			
    		{	
    			print("<img name='img_$item_key' src='_pics/chek.png' border='0' title=\"L'utilisateur $item_Nom est validé\" id='submit_$item_key' onclick='Supp($item_key)'/>");
    		}
    		else
    		{	
    			print("<img name='img_$item_key' src='_pics/faux.png' border='0' title=\"L'utilisateur $item_Nom n'est pas validé\"id='submit_$item_key' onclick='Auto($item_key)'/>");
    		}
    		print("</div>");

  10. #10
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    C'est bien ça : ton image est incluses dans le div, dont ta fonction Ajax remplace le contenu (images comprises, donc).
    Le temps que reste affichée l'image te donne le temps de réponse de ton appel Ajax

    A+

  11. #11
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Alors et ce que je peut faire une sorte de refresh simplement sur le champ dans lequel je vient de cliquer... Au quel cas je n'est plus mon JS qui ferai le changement d'image mais mon php....Ou c'est null ce que je dit

  12. #12
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Avant de tout casser, essaye déjà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('etat_'+id).innerHTML += http_request.responseText;
    A+

  13. #13
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Mais qui es-tu pour repondre de la sorte ????
    Une machine douée d'un intelligence artifficielle ....
    Un sur-homme !!!
    On va t'appeller , super bzz.
    En plus tu es le seul à repondre sur ce forums
    Merci merci et merci .

    Aller je clique résolu avec plaisir.

  14. #14
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    T'emballe pas : je secherai sûrement la prochaine fois

    ... et tous les autres répondent à d'autres posts pendant ce temps

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requêtes impossible à créer
    Par ThieBEN dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 20/07/2007, 13h27
  2. requêtes impossible sur Postgre
    Par DDMALO dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 25/05/2007, 13h56
  3. [Requête] Impossible de faire fonctionner !
    Par Nesta92 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 17/04/2007, 09h38
  4. [HTML] image en dump impossible a ouvrir
    Par petitenovice dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 09/11/2006, 22h27
  5. Centrer plusieurs images en CSS, impossible ?
    Par koskoz dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 03/08/2006, 22h55

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