Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks
Bibliothèques & Frameworks Forum d'entraide sur les frameworks et bibliothèques JavaScript (jQuery, Mootools, Prototype, Script.aculo.us, etc.). Avant de poster : Cours Frameworks JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/02/2006, 11h16   #1
Invité de passage
 
Inscription : février 2006
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 5
Points : 1
Points : 1
Par défaut Afficher depuis d'une liste deroulante (PHP+AJAX)

Bonjour,

bah voilà je suis en cour de developpement d'une ptit application mais là je suis bloqué ... je DOIS utilisé la methode AJAX PHP.

d'abord le contenue du 2eme liste deroulante se charge apartir du choix de la 1ere, et la 3eme apartir de la 2eme, j'ai pu faire la 1ere etape ce qui veux dire chargée la 2eme liste deroulante apartir du choix de la 1ere liste deroulante, mais j'arrive pas a ajouter la 3eme :s

et mon 2eme problem c'est apres que l'utilisateur choisi une option dans la 3eme liste deroulante les information complementaire doivent s'afficher au dessous , dans la meme pages, sans la recharger (avec ajax).

je me suis servi des exemple pour le chargement des liste deroulante d'un tutoriel qui se trouve ici sur developpez.com ... mais là j'arrive plus a continué...

PS: je suis encore debutant en javascript et php ...

Merci d'avance pour votre aide
maxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2006, 14h05   #2
Invité de passage
 
Inscription : février 2006
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 5
Points : 1
Points : 1
Est ce que personne ne sait comment y procéder ou bien je me suis mal exprimé ?
maxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2006, 14h06   #3
Membre émérite
 
Avatar de macbook
 
Inscription : février 2006
Messages : 840
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 840
Points : 924
Points : 924
Ben c'est à dire que c'est surtout du javascript ton problème, et que là nous sommes dans la section PHP...
macbook est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2006, 14h10   #4
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
déjà, on va commencer par modifier un peu le code de sidth :

Code :
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
59
60
61
62
63
64
65
66
67
68
69
70
71
 
//
// Fonctions AJAX
//
				var xhr = null; 
 
			function getXhr(){
				if(window.XMLHttpRequest) // Firefox et autres
				   xhr = new XMLHttpRequest(); 
				else if(window.ActiveXObject){ // Internet Explorer 
				   try {
			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
			            } catch (e) {
			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
			            }
				}
				else { // XMLHttpRequest non supporté par le navigateur 
				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
				   xhr = false; 
				} 
			}
 
// type_envoi : GET ou POST
// url_cible : la page  à exécuter
 
// cible_page : le div cible dans ta page
// parametres : les parametres à envoyer au fichier cible
//		passer le paramètre sous la forme : val1=valeur1&val2=valeur2&val3=valeur3.....
 
function go(type_envoi, url_cible, cible_page, parametres){
	// Création de l'objet XMLHttpRequest
	getXhr();
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function(){
		// Affiche un message d'attente
		if ((xhr.readyState == 1) || (xhr.readyState == 2)) {
			document.getElementById('general').style.cursor="wait";
			document.getElementById(cible_page).innerHTML = '<div align="center"><div class="fit"><b>Loading</b><br><img src="IMGS/INTERFACE/loading.gif" width="82" height="10"></div></div>';
		}
		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		if(xhr.readyState == 4 && xhr.status == 200){
			document.getElementById('general').style.cursor="default";
			// Texte renvoyé par la page cible (url_cible)
			valeur_retour = xhr.responseText;
			// On se sert de innerHTML pour rajouter les options a la liste
			document.getElementById(cible_page).innerHTML = valeur_retour;
		}
	}
	url_cible = "/dev/HTML/FR/PAGES/"+url_cible;
 
 
	// Dans le cas du GET, on concatène les paramètres à l'adresse cible
	if (type_envoi == 'GET') {
		url_cible = url_cible+'?'+parametres;
	}
 
 
	// Envoi de la requête
	xhr.open(type_envoi, url_cible,true);
 
 
	// Dans le cas du POST, on envoie le header ainsi que les paramètres
	// Sinon (GET), on envoie null
	if (type_envoi == 'POST') {
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xhr.send(parametres);
	} else {
		xhr.send(null);
	}
}
//-->
ca va te permettre avec une même fonction de remplir différents champs en utilisant différentes pages. ca devrait solutionner ton soucis, mais on devrait passer dans le forum javascript

pour exemple, je m'en sert comme suit :

Code :
1
2
 
go('GET', 'DB_produits.php', 'contenu', 'val_selected=toto&amp;section=MAIN')
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2006, 15h16   #5
Invité de passage
 
Inscription : février 2006
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 5
Points : 1
Points : 1
Merci bcp je vais essayer de voir ça et de repondre ....

Ps: si un moderateur passe par ici qu'il deplace ce sujet sur le forum du javascript
maxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2006, 19h26   #6
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Homme Nicolas Vallée
Ingénieur Système
Inscription : décembre 2005
Messages : 9 771
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Vallée
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Ingénieur Système
Secteur : Transports

Informations forums :
Inscription : décembre 2005
Messages : 9 771
Points : 14 298
Points : 14 298
Au fait, as-tu forcemment besoin de Ajax pour faire cela ?

si je me souviens bien, rien qu'en utilisant QuickForm de pear, on peut avoir ce genre de multiples listes déroulantes dont le contenu change en fonction les listes précédentes...


Enfin, ça dépend si les éléments des listes sont connues à l'avance...
(du genre quand tu fais année mois jour, ça t'évites d'avoir à tester le coup du 31 février )
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2006, 10h44   #7
Invité de passage
 
Inscription : février 2006
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 5
Points : 1
Points : 1
oui je dois absolument utilisée AJAX,

mon probleme c'est qu'on a pas étudié ni javascript ni xml et notre projet dois etre en ajax, et là j'arrive pas a comprendre ce que je dois faire exactement ... plus de clarification seront les bienvenue et merci
maxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2006, 11h24   #8
Invité de passage
 
Inscription : février 2006
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 5
Points : 1
Points : 1
alors personne pour m'aider
maxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2006, 11h38   #9
Membre à l'essai
 
Inscription : décembre 2004
Messages : 104
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 104
Points : 21
Points : 21
pour comprendre comment Ajax fonctionne, rends-toi sur un site Ajax qui en explique bien le fonctionnement
par exemple: Rico
c en anglais bien sur

et tu verras que c que tu veux faire est possible et même assez simplement une fois que tu as pigé le truc
Néo-Tony est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2006, 12h47   #10
Membre habitué
 
Avatar de Tchinkatchuk
 
Homme Sylvain Gourvil
Freelance en développement Web
Inscription : mars 2005
Messages : 248
Détails du profil
Informations personnelles :
Nom : Homme Sylvain Gourvil
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Freelance en développement Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mars 2005
Messages : 248
Points : 141
Points : 141
tu peux egalement utiliser xajax qui est assez simple aussi.
Je crois qu'il y a un activex sous Ie.
A voir.
Tchinkatchuk est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h40.


 
 
 
 
Partenaires

Hébergement Web