Bonjour,

je suis en train de développer un moteur de recherche sur un site de e-commerce fonctionnant sous PrestaShop.

J'aimerais afficher les résultats d'une requête en Ajax. Lors d'une requête vers les bases de données, j'obtiens un Array, que je convertis avec json_encode() pour obtenir une chaîne telle que celle-ci :

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
 
[
    {
        "id_product":"40",
        "id_category_default":"20",
        "id_tax":"1",
        "quantity":"2",
        "price":"125.418060",
        "reduction_price":"0.00",
        "reduction_percent":"0",
        "reduction_from":"2010-06-03 00:00:00",
        "reduction_to":"2010-06-03 00:00:00",
        "active":"1",
        "id_product_attribute":"396",
        "description_short":"<p>L'horloge &agrave; tubes imite les horloges &agrave; tubes Nixie, revisit&eacute;es avec un affichage led de qualit&eacute;.<\/p>",
        "available_now":"",
        "available_later":"",
        "link_rewrite":"horloge-a-tubes",
        "meta_description":"",
        "meta_keywords":"",
        "meta_title":"",
        "name":"Horloge \u00e0 Tubes",
        "id_image":"128",
        "legend":"Horloge \u00c3\u00a0 Tubes",
        "tax_name":"TVA 19.6%","rate":"19.600",
        "category_default":"10.Cadeau Design",
        "new":"0",
        "orderprice":"149.99999976"
    },
{
...
}
]
Cette chaîne est donc composée de plusieurs tableaux, contenant chacun plusieurs attributs et caractéristiques de chaque produit correspondant à la recherche de l'utilisateur.

Dans un premier, j'aimerais savoir comment, par exemple, afficher certaines informations "brut". Par exemple, à partir du résultat ci-dessous, j'aimerais obtenir :

Horloge à Tubes
L'horloge à tubes imite les horloges à tubes Nixie, revisitées avec un affichage LED de qualité.
125.418060

Ce qui revient à avoir les informations
name
description_short
price

J'ai déjà ma fonction loadJSON qui ressemble à ceci (qui se charge de récupérer soit un fichier JSON, soit une variable JSON, d'aller chercher des infos dedans et de les afficher) :

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
 
function loadJSON(fname) 
{
    var xhr=createXHR();
    xhr.open("GET", fname,true);
    xhr.onreadystatechange=function() 
    {
        if (xhr.readyState == 4) 
        {
            if (xhr.status != 404) 
            {
                var data=eval("(" + xhr.responseText + ")");
                for(i = 0; i < 3; i++)
                {
                    //QUE METTRE ICI ?
                }
            } 
            else 
            {
                document.getElementById("zone_de_resultats").innerHTML = fname + " not found";
            }
        }
    }
    xhr.send(null);
}
Voilà, donc principalement un problème de "formatage" des données, j'imagine. N'hésitez pas à me demander des trucs si j'ai mal expliqué, et merci d'avance pour vos réponses !