[ar] [ca] [cpf] [de] [en] [es] [fr] [it]

Ce forum d’entraide est recommandé pour les utilisateurs et utilisatrices occasionnels de SPIP (Système de publication pour l’Internet). Avant de poser une question, faites une recherche sur ce site, consultez les liens utiles. Si vous ne trouvez pas de réponse, postez votre message dans la rubrique appropriée, avec un titre explicite.

Sujets : 24110 Sujets résolus :  39 %

62 visiteurs en ce moment


Accueil > Forums de discussion >  Création de squelettes > Boucle data afficher résultat tableau

Boucle data afficher résultat tableau

par Didine - 7 février 11:52 - Réponse(s) : 3

Bonjour,

j’utilise une classe php pour faire le tri dans un flux xml et ensuite afficher les résultats dans mon article.

Dans mes_fonctions j’ai mis :

<?php
include_spip 
('classes/test_class');

function 
test_class2(){
$kiwi = new Kiwi();
$ref 74;

$tarifs $kiwi->Api1BienTarif($ref);
foreach(
$tarifs as $tarif)
{
  echo 
"<p>ref = $ref : debut = " $tarif[0] . " - fin = " $tarif[1] . " -- prix = " $tarif[2];
}
echo 
"<hr>";


}

?>

Cette classe retourne les résultats dans un tableau.
Les infos apparaissent bien mais en dehors du content de l’article pour le moment.

J’ai créé un modèle avec un filtre qui fait appel à la fonction mais il ne m’affiche que le premier résultat...

Comment rédiger une boucle qui permettrait d’afficher toutes les lignes du tableau comme avec le foreach ?

Merci pour votre aide


  • il faut que la fonction retourne le tableau php

    1. include_spip ('classes/test_class');
    2.  
    3. function test_class2(){
    4. $kiwi = new Kiwi();
    5. $ref = 74;
    6.  
    7. $tarifs = $kiwi->Api1BienTarif($ref);
    8. return $tarifs;}

    Télécharger

    et dans votre modele

    1. <BOUCLE_data(DATA){source table,#VAL|test_class2}>
    2. #CLE -> #VALEUR</br>
    3. </BOUCLE_data>

    Télécharger

    A noter que vous pouvez passer la ref en paramètre du modele

    1. <mon_model|74>

    squelettes/modeles/mon_model.html :

    1. ref: #ENV{id}
    2. [<!--(#REM) Boucler sur le tableau?-->]
    3. <BOUCLE_data(DATA){source table,#ENV{id}|test_class2}>
    4. #CLE -> #VALEUR</br>
    5. </BOUCLE_data>

    Télécharger

    et la fonction :

    1. function test_class2($ref){
    2. if ($ref){
    3. $kiwi = new Kiwi();
    4. return $kiwi->Api1BienTarif($ref);
    5. }
    6. }

    Télécharger


  • Un grand merci pour ces infos tout fonctionne très bien.

    Une dernière question : pour certains éléments à afficher la class php me renvoie un tableau avec une colonne et 11 lignes de résultats.

    la boucle suivante n’affichait rien :

    1. <BOUCLE_data(DATA){source table,#VAL|test_class5} >
    2. <tr>
    3. <td>[(#VALEUR {0})]</td>
    4. <td>[(#VALEUR {1})]</td>
    5. <td>[(#VALEUR {2})]</td>
    6. </tr>
    7. </BOUCLE_data>

    Télécharger

    Du coup j’ai modifié ma boucle :

    1. <BOUCLE_data(DATA){source table,#VAL|test_class5} >
    2. <tr>
    3. <td>#VALEUR</td>
    4. </tr>
    5. </BOUCLE_data>

    Télécharger

    voici ce qui s’affiche :

    074
    8
    Toto

    Mon problème est le suivant : pour la mise en page je ne peux pas mettre les différents résultats de la boucle à des endroits différents dans ma page.

    Comment afficher les infos des lignes indépendamment les unes des autres ?
    Est-ce réalisable ? Faut-il utiliser des filtres ?

    Merci pour votre aide !


  • Bonjour,

    tu peux faire ça au moyen des balises #SET et #GET.
    La boucle servira uniquement à remplir le tableau #SET, et ensuite tu peux afficher ces valeurs n’importe où avec #GET

    1. #SET{valeurs, #ARRAY}
    2. BOUCLE_data(DATA){source table,#VAL|test_class5} >
    3. #SET{valeurs,#GET{valeurs}|push{#VALEUR}}
    4. </BOUCLE_data>
    5.  
    6. <!-- plus loin -->
    7. [(#GET{valeurs/1})]
    8.  
    9. <!-- encore plus loin -->
    10. [(#GET{valeurs/2})]
    11.  
    12. etc.

    Télécharger




Répondre à la question

« Boucle data afficher résultat tableau »

Mots-clés

Vous pouvez étiqueter cette page de forum avec les mots-clés qui vous semblent les plus appropriés ; ils permettront aux prochains visiteurs du site de mieux se repérer :


Installation, mise à jour

Utilisation de l’espace privé

Administration, gestion, configuration du site

Créer ses squelettes

Qui êtes-vous ?

  • Probleme avec mediabox spip3.1.6

    par Manu
    20:15

    Réponse(s) : 9

    J’ai l’impression que, tout simplement, la mediabox ne se met pas en route. Je serais curieux de voir la page ecrire/ ?exec=configurer_mediabox

  • Codage des caractères spéciaux en HTML avec SPIP

    par dfdf
    17:23

    Résolu - Réponse(s) : 5

    gfhfghj

  • Comment faire pour créer un formulaire a liste déroulante qui est rataché a une table de la base (...)

    par Jhessy
    16:53

    Pas de réponse

    Bonjour les amis ! ET merci d’avance pour vos réponses :) Alors je vous fais le topo. Ce que je souhaite faire, c’est d’inséré sur ma page, une liste déroulante qui contiendra des mots-clés qui sont (...)

  • creer ou bien modifier son article côté public via un modèle

    par Laëtitia
    22 juillet 18:16

    Résolu - Réponse(s) : 4

    Je remarque une chose, si il y a 1 document dans le portfolio du rédacteur il peut en charger d’autres sur sa page publique, mais c’est quand il n’y en a pas encore que le chargement ne se fait pas (...)

  • afficher valeurs par ordre croissant

    par Didine
    20 juillet 08:47

    Pas de réponse

    Bonjour, j’utilise le plugin champs supplémentaires. Je récupère dans une liste le contenu de certains champs pour faire un formulaire de tri. Tout fonctionne correctement, cependant dans le select (...)

  • pb spip/spipr et test robots google

    par Didine
    19 juillet 20:07

    Résolu - Réponse(s) : 7

    Bonjour, je suis désolée mais le problème est de retour sur ce site alors que ça fonctionnait après notre échange. Le problème se pose sur plusieurs sites SPIP... peut-être est-ce dû aux modifications (...)

  • Appeler squelette

    par Mickael
    17 juillet 19:26

    Résolu - Réponse(s) : 2

    Ok, effectivement j’ai des articles qui ont perdu leur affectation :s, du coup je me retrouve avec une rubrique vide... Merci beaucoup

  • Update de la table auteurs

    par Luc
    17 juillet 11:25

    Réponse(s) : 3

    Merci, mais en fait je n’ai aucun problème à afficher les auteurs connectés en récupérant les infos de la table auteurs ; ce que je cherche, c’est faire en sorte que les auteurs connectés updatent la (...)

  • Galerie d'image lightbox slider adaptable

    par Jhessy
    12 juillet 09:57

    Réponse(s) : 2

    Bonjour Philivert, Je sais que le portfolio le fait déjà mais je dois faire cela de cette manière la car c’est dans le cahier des charges de mon stage. Et comme mon problème (en générale) c’est (...)

  • plugin SAISIES & messages d'erreur

    par Keny972
    7 juillet 14:57

    Pas de réponse

    Bonjour, J’utilise en local le plugin SAISIES pour gérer un formulaire de création d’objet éditorial. Je cherche comment ajouter à un champ SAISIES une span message_erreur ? Pas le message (...)

  • Messages : 29328
  • 8201 43 %
  • Poser une nouvelle question