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

jQuery Discussion :

Autocomplete : récupérer un tableau php json_encode


Sujet :

jQuery

  1. #1
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut Autocomplete : récupérer un tableau php json_encode
    Bonjour à tous,

    Qu'est-ce qui cloche dans le code suivant ? (je ne récupère pas l'ID dans le champs hidden "id_prod", alors que le label est ok dans le champ "produit") :
    JS :
    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
     
    $(document).ready(function(){
    	var ac_config = {
    		url: "autocomplete.php",
    		maxItemsToShow: 30,
    		cacheLength: 1,
    		width:650,
    		showResult: function(event, ui){
    			$("#produit").val(ui.item.label);
    			$("#id_prod").val(ui.item.value);
    		},
    		minLength:1
    	};
    	$("#produit").autocomplete(ac_config);
    });
    HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <form id="form1" name="form1" method="post" action="">
      <input type="text" name="produit" id="produit"  />
      <input type="hidden" name="id_prod" id="id_prod" />
      <input type="submit" name="submit" value="valider" />
    </form>
    PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $q = $_GET['q'];
    $tab = array();
    	$sql = "SELECT id, nom FROMtable WHERE nom LIKE '".FixQuotes($q)."%' AND prix != '0' AND etat='1' ORDER BY nom ";
    	$res = mysql_query($sql) or die(mysql_error());
     
    		if(mysql_num_rows($res) >0)
    		{
    			while ($row = mysql_fetch_assoc($res)) 
    			{
    				$tab[] = array("label"=>stripslashes(trim($row['nom'])), "value"=>$row['id']);
    			}
    		}
    echo json_encode($tab);
    Merci de votre aide !

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 45
    Par défaut
    FROMtable ? ta requete marche?

  3. #3
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Bonjour,

    Oui c'est une faut de frappe !
    Je récupère bien la valeur, mais pas l'id.
    Je crois que je vais revenir à la version précédente de autocomplete,
    parce que le json, je galère.

  4. #4
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut
    J'arrive un peu tard (+3Jours).
    As-tu laissé tombé ?

    Car je vois pas comment ce bout de code fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    var ac_config = {
    		url: "autocomplete.php",
    		maxItemsToShow: 30,
    		cacheLength: 1,
    		width:650,
    		showResult: function(event, ui){
    			$("#produit").val(ui.item.label);
    			$("#id_prod").val(ui.item.value);
    		},
    		minLength:1
    	};
    J'ai l'habitude de faire des requête Ajax du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $.ajax({
       type: "POST",
       url: "some.php",
       data: "name=John&location=Boston",
       success: function(msg){
         alert( "Data Saved: " + msg );
       }
     });
    Mais ton morceau je ne le comprends pas c'est frameW qui t'offre cette possibilité ?

  5. #5
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Bonjour,

    Oui j'ai renoncé à utiliser JSON et suis revenu à du jquery traditionnel.
    Tout fonctionne impec.

    Merci d'être passé.
    Bonne fin de journée.

  6. #6
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut
    C'est triste de renoncer si vite.
    Car le JSON c'est assez pratique (et plus lisible que le XML, enfin c'est mon point de vue) quand on a un retour convenable en sortie PHP.

    Peux-tu m'expliquer comment ou avec quoi fonctionne le petit bout de code que j'ai cité plus haut ? (pour ma culture)

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

Discussions similaires

  1. Récupérer un tableau PHP en JS
    Par Invité dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/05/2014, 07h46
  2. [AJAX] Récupérer un tableau php
    Par shadowfax1978 dans le forum AJAX
    Réponses: 4
    Dernier message: 02/02/2012, 00h18
  3. [PHP-JS] Récupérer mon tableau PHP en JavaScript
    Par yohann26 dans le forum Langage
    Réponses: 7
    Dernier message: 21/11/2011, 18h21
  4. récupérer un tableau PHP dans une fonction javascript
    Par aztec dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/05/2007, 22h11
  5. Réponses: 14
    Dernier message: 15/12/2005, 10h32

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