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] Affichage d'une liste unique à partir d'une requête mySQL


Sujet :

AJAX

  1. #1
    Membre habitué Avatar de PadawanInPerl
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 462
    Points : 186
    Points
    186
    Par défaut [AJAX] Affichage d'une liste unique à partir d'une requête mySQL
    Bonjour,

    J'essaie d'avoir une liste déroulante à partir d'une requête mySql.

    j'ai un tableau dont une des cellules est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<td><select class="form-control a-liste-lu" id="08" title="pretBB1">'.$liste_membres.'</td>';
    ici je pense que je n'appelle pas correctement la liste ($liste_membres).


    j'ai un ajax qui dit :
    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
     
    $(document).ready(function() {
    //au click sur le lien chercher (.class)
    $(".a-liste-lu").click(function(){
    var heure = $(this).attr("id"); //on recupere la valeur de l'attribut id
    var service = $(this).attr("title"); //on recupere la valeur de l'attribut title
    $.ajax({
    type: "GET",
    url: "aff_modif.php?listeLu="+heure+";"+service,
    dataType : "html",
    //affichage de l'erreur en cas de problème
    error:function(msg, string){
    alert( "Error !: " + string );
    },
    success:function(data){
    //alert(data);
    //on met à jour le div zone_de_rechargement avec les données reçus
    //on vide la div et on le cache
    $(select).empty().hide();
    //on affecte les resultats au div
    $(select).append(data);
    //on affiche les resultats avec la transition
    $(select).fadeIn(25);
    }
    });
    });
    })
    ici je pense que le $(select) c'est faux.


    Un partie de mon script php qui appelle la bdd:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $donnees = $reponse->fetchAll(PDO::FETCH_ASSOC);
    foreach($donnees as $row)
    {
      $liste_membres = '<option value="'.$row['id'].'">'.$row['pseudo'].'</option>';
    }
     
      $reponse->closeCursor();

    Pourriez-vous m'aider à concrétiser ma liste ? ;O)
    Windows 7, 64 bit
    Perl 5.12, ActivePerl
    Python 3.2, ActivePython ( NOVICE ! )

  2. #2
    Membre habitué Avatar de PadawanInPerl
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 462
    Points : 186
    Points
    186
    Par défaut
    Peut-être un peu mieux ma cellule...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    echo '<td><select class="form-control a-liste-lu" id="08" title="pretBB1">';
    foreach ($liste_membres as $a){echo $a;}
    echo '</select></td>';
    Windows 7, 64 bit
    Perl 5.12, ActivePerl
    Python 3.2, ActivePython ( NOVICE ! )

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Bonjour PadawanInPerl,

    Ta première impression semble correcte...

    Utilises $(".a-liste-lu") au lieu de $(select).

    Mieux encore, mémorise $(".a-liste-lu") dans une variable que tu pourras utiliser à chaque commande cela t'éviteras de rechercher ton SELECT à chaque commande jQuery.


    devYan


    devYan.

  4. #4
    Membre habitué Avatar de PadawanInPerl
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 462
    Points : 186
    Points
    186
    Par défaut
    Merci Devyan pour ta réponse

    si j'ai bien compris cela donne pour mon ajax :

    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
     
     
    $(document).ready(function() {
    //au click sur la class du select
    $(".a-liste-lu").click(function(){
    //on recupere la valeur de l'attribut id et title
    var heure = $(this).attr("id");
    var service = $(this).attr("title");
    $.ajax({
    type: "GET",
    url: "aff_modif.php?listeLu="+heure+";"+service,
    dataType : "html",
    //affichage de l'erreur en cas de problème
    error:function(msg, string){
    alert( "Error !: " + string );
    },
    success:function(data){
    //alert(data);
    //on met à jour le div zone_de_rechargement avec les données reçus
    //on vide la div et on le cache
    $(".a-liste-lu").empty().hide();
    //on affecte les resultats au div
    $(".a-liste-lu").append(data);
    //on affiche les resultats avec la transition
    $(".a-liste-lu").fadeIn(25);
    }
    });
    });
    })
    je posais la question si cela était juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url: "aff_modif.php?listeLu="+heure+";"+service,
    Cela me retourne t-il une valeur1;valeur2 ?
    Windows 7, 64 bit
    Perl 5.12, ActivePerl
    Python 3.2, ActivePython ( NOVICE ! )

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Je viens de lire plus attentivement ton code (qui n'est pas indenté )

    Si tu regardes la documentation jQuery tu verras que :
    • $(element).click(function(event) { ... });
    • dans la fonction anonyme this vaut element.


    ce qui te donnes :
    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
    $(document).ready(function() {
    	//au click sur la class du select
    	$(".a-liste-lu").click(function(){
    		var $select = $(this);
    		//on recupere la valeur de l'attribut id et title
    		var heure = $select.attr("id");
    		var service = $select.attr("title");
    		$.ajax({
    			type: "GET",
    			url: "aff_modif.php?listeLu="+heure+";"+service,
    			dataType : "html",
    			//affichage de l'erreur en cas de problème
    			error:function(msg, string){
    				alert( "Error !: " + string );
    			},
    			success:function(data){
    				//alert(data);
    				//on met à jour le div zone_de_rechargement avec les données reçus
    				//on vide la div et on le cache
    				$select.empty().hide();
    				//on affecte les resultats au div
    				$select.append(data);
    				//on affiche les resultats avec la transition
    				$select.fadeIn(25);
    			}
    		});
    	});
    })
    En ce qui concerne ton autre question, j'ai envie de répondre "essayes"

    ";" n'est pas un caractère "spécial" pour une URL, tu devrais donc recevoir "valeur1;valeur2" dans le paramètre nommé "listeLu".

    devYan.


    devYan.

  6. #6
    Membre habitué Avatar de PadawanInPerl
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 462
    Points : 186
    Points
    186
    Par défaut
    Merci !!

    Je teste tous cela.
    Windows 7, 64 bit
    Perl 5.12, ActivePerl
    Python 3.2, ActivePython ( NOVICE ! )

  7. #7
    Membre habitué Avatar de PadawanInPerl
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 462
    Points : 186
    Points
    186
    Par défaut
    encore un petit souci... mais je pense qu'il vient d'ailleurs...

    Je cloture et ouvre un autre post.

    MERCI !!
    Windows 7, 64 bit
    Perl 5.12, ActivePerl
    Python 3.2, ActivePython ( NOVICE ! )

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

Discussions similaires

  1. [LibreOffice][Base de données] Recuperer une liste de tables et une liste de champs d'une table sur LibreOffice & OpenOffice
    Par gerard.sauvage dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 08/04/2014, 12h35
  2. Affichage d'une image a partir d'une liste de references
    Par appericube49 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/06/2013, 16h17
  3. [AJAX] charger liste automatique à partir d'une liste
    Par saedkhella dans le forum AJAX
    Réponses: 1
    Dernier message: 28/01/2011, 13h42
  4. [XL-2007] Liste unique à partir d'une liste de données
    Par Just-Soft dans le forum Excel
    Réponses: 2
    Dernier message: 15/07/2010, 14h34
  5. Réponses: 4
    Dernier message: 03/12/2009, 15h18

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