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

AJAX Discussion :

[AJAX] Remplir des cases de tableau suivant valeur choisie dans liste déroulante


Sujet :

AJAX

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut [AJAX] Remplir des cases de tableau suivant valeur choisie dans liste déroulante
    Bonsoir

    J'ai créé avec l'aide de membres de ce forum le tableau de fin de cette page:
    http://warhammer-jdr.com/genprez/presentation.php

    J'aurai souhaité y ajouter une option:
    En lieu et place du 4e champs "Race", il y aurait un menu déroulant où l'utilisateur devrait choisir une option (sa race). Suivant celle-ci, des valeurs spécifiques seraient introduites dans les cases de la première ligne du tableau, 'Profil de base'. Bien sûr, chaque option de la liste induirait des valeurs différentes.

    Les valeurs du menu déroulant seraient stockées dans la BDD

    Merci d'avance et bon dimanche

  2. #2
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    Bonjour,

    Et qu'est-ce qui te pose problème au juste? Tu as quelques bases en "ajax" ?
    Toute question technique envoyée en MP ira directement à la poubelle

    Un code ne marchera jamais, il n'a jamais reçu la capacité de se déplacer.
    Inutile donc de dire "ça marche pas", donnez plutôt des informations précises afin de mieux pouvoir vous aider.


    Grand gourou de la -attitude

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut
    Bonjour

    Et bien je ne sais pas comment mettre ça en place ^^ Je maitrise XHTML et CSS, un peu PHP, pas du tout Javascript ni Ajax :s

  4. #4
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    Bah apprends ^^.

    Sinon,le principe: tu as une page PHP (ou autre) qui va te générer les bonnes valeurs en fonction de ce que tu lui envoies, et cette page est appelée par javascript lors d'un changement de sélection (pour faire simple).

    Sinon,renseigne-toi sur l'objet XMLHttpRequest en javascript après avoir lu un bon tuto expliquant les bases
    Toute question technique envoyée en MP ira directement à la poubelle

    Un code ne marchera jamais, il n'a jamais reçu la capacité de se déplacer.
    Inutile donc de dire "ça marche pas", donnez plutôt des informations précises afin de mieux pouvoir vous aider.


    Grand gourou de la -attitude

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut
    Bonsoir

    Je n'aurai malheureusement pas le temps de m'atteler à apprendre ça car je suis déjà plongé dans mes études personnelles actuellement, et j'essaie d'apprendre le PHP correctement quand j'ai le temps :s Et mon site ne pourra pas attendre que je me penche sur Javascript et Ajax

    Je comprend la partie SQL:
    http://siddh.developpez.com/articles/ajax/#LIV-A

    Mais je ne vois pas comment appliquer à ce que je recherche moi, ni la partie Ajax, c'est ça le problème

    Y aurait-il donc moyen que l'on m'explique ce que je dois mettre comme code ?

    Merci d'avance

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut
    Bonjour

    J'ai essayé diverses manière mais aucune ne marche

    Pourriez-vous m'aider à concevoir ce système ?

    Merci d'avance

  7. #7
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    Bonjour,

    Peux-tu nous montrer ce qui marche pas?
    Toute question technique envoyée en MP ira directement à la poubelle

    Un code ne marchera jamais, il n'a jamais reçu la capacité de se déplacer.
    Inutile donc de dire "ça marche pas", donnez plutôt des informations précises afin de mieux pouvoir vous aider.


    Grand gourou de la -attitude

  8. #8
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut
    Bonsoir

    J'arrive à faire la partie SQL de la page (en même temps..) qu'on m'avait envoyé, mais ca s'arrête là. Après je ne sais pas quoi faire

    J'ai essayé en Javascript, n'en parlons pas..

    En gros, je suis largué. Heureusement c'est un truc optionnel, mais bon En gros c'est la partie du code à faire dans la page que je bloque

  9. #9
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 24
    Points
    24
    Par défaut
    javascript:

    la fonction go(list1,IdDiv) en parametre tu met l'id de la liste déroulante, et l'id de la div
    en gros dans ta page tu a ta liste déroulante et une div qui ne contient rien du tout, et en fonction tu choix dans la liste déroulante ca va mettre le contenu du fichier "./tableau.php" dans la div, sachant que la fonction envoi en POST la valeur de l'élément choisis dans la liste déroulante et pour le récupérer dans tableau.php tu fait $_POST['idList']

    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
    function getXhr(){
    	var xhr = null; 
    	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; 
    		} 
    	}
    	return xhr;
    }
     
    /**
    * Méthode qui sera appelée sur le click du bouton
    */
    function go(list1,IdDiv){
    	var xhr = getXhr();
    	// On défini ce qu'on va faire quand on aura la réponse
    	xhr.onreadystatechange = function(){
    		// 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){
    			leselect = xhr.responseText;
    			// On se sert de innerHTML pour rajouter les options a la liste
    			document.getElementById(IdDiv).innerHTML = leselect;
    		}
    	}
     
    	// Ici on va voir comment faire du post
    	xhr.open("POST","./tableau.php",true);
     
     
    	// ne pas oublier ça pour le post
    	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    	// ne pas oublier de poster les arguments
    	// ici, l'id du choix selectionné dans la liste déroulante, à envoyer en post
    	sel = document.getElementById(list1);
    	idlist = sel.options[sel.selectedIndex].value;
    	xhr.send("idList="+idlist);
    }
    exemple pour ta page contentant la liste déroulante :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <span>Choix du fruit : </span>
    	<select name="fruit" id="table" onchange="go('fruit','div_fruit')">
    		<OPTION value="" selected>--- Choisissez le fruit ---</OPTION>
    		<option value='banane'>banane</option>
    		<option value='pomme'>Pomme</option>
    		<option value='poire'>Poire</option>
    		<option value='raisin'>Raisin</option>
    		<option value='kiwi'>Kiwi</option>
    	</select>
    	<div id='div_fruit'>
    		<center>
    			Aucune données
    		</center>
    	</div>

  10. #10
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 127
    Points : 36
    Points
    36
    Par défaut
    Bonjour

    Merci de ton aide

    Comment adapter cela au tableau du profil:
    http://warforum-jdr.com/genprez/presentation.php

    ?

    En gros, le choix du menu déroulant enverrait les valeurs correspondant aux différentes caractéristiques du tableau

    Merci d'avance

  11. #11
    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,
    Citation Envoyé par Medenor Voir le message
    Comment adapter cela au tableau du profil
    tu as ci-dessus des explications et un exemple commenté.
    Tout ça en plus des tutos du site.

    Va falloir en faire un peu toi-même

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/08/2014, 12h16
  2. Afficher cases à cocher selon une valeur d'une liste déroulante.
    Par sihammaster dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 19/04/2012, 11h26
  3. Réponses: 4
    Dernier message: 11/04/2010, 14h18
  4. Réponses: 4
    Dernier message: 19/10/2008, 10h25
  5. Copier valeur choisie dans liste modifiable d'une combobox
    Par pinpin31 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/10/2008, 21h36

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