Re: [Galette-devel] Carte Adhérent : afficher dynamic field |
[ Thread Index |
Date Index
| More lists.galette.eu/devel Archives
]
Bonjour,
N'ayant pas eu de retour de votre part (suis-je tout seul sur la liste devel ? :P ), j'ai continué mes essais ...
Je suis arrivé à faire ce que je souhaitais ! :D
Au cas où ça puisse servir à d'autres, voici le code que j'ai utilisé, dans "carte_adherent.php" :
"
use Galette\Entity\Adherent;
....
//Grade
$id_m = $member->id;
$select1 = $zdb->select(dynamic_fields);
$select1->where(array(field_id => 4, item_id => $id_m));
$result1 = $zdb->execute($select1);
$dfi = $result1->current();
$df_val = $dfi->field_val;
$select2 = $zdb->select(field_contents_4);
$select2->where(array(id => $df_val));
$result2 = $zdb->execute($select2);
$fc4 = $result2->current();
$gr = $fc4->val;
"
Je ne suis pas sûr que ce soit une méthode bien conventionnelle, mais elle a le mérite de fonctionner ! :)
@++
Fred
----- Mail original -----
De: "f lassave" <f.lassave@xxxxxxx>
À: devel@xxxxxxxxxxxxxxxx
Envoyé: Jeudi 16 Février 2017 19:36:37
Objet: Re: [Galette-devel] Carte Adhérent : afficher dynamic field
Bonjour,
Je viens demander votre aide car je ne m'en sors pas ... :/
> > > Autre méthode qui me taraude : ne pourrais-je pas faire une
> > > requête
> > > SQL pour remonter la valeur désirée ? Si c'est possible, quelle
> > > serait la syntaxe appropriée ?
> >
> > Beh... La requête est éxécutée par getFields() ; suffit de voir le
> > log
> > debug dans lequel les requêtes exécutées sont stockées en mode
> > debug.
> >
>
> J'ai, du coup, essayé de faire une requête SQL "spécifique", mais,
> autant je pense avoir intégré la syntaxe MySQL (qui ne fonctionne
> plus !?), autant je me perds dans la syntaxe Zend db ...
> Et le "query()", qui me permettrait d’interpréter ma requête, ne
> semble pas fonctionner ...
>
> Un idée ?
J'ai lu la doc Zend, pour exécuter une requête sql, dans le .php, et remonter le résultat dans une variable ...
Mais rien ne fonctionne (select(), query(), etc.) ...
En essayant de voir comment Galette faisait ses accès à la base, je suis arrivé à :
"
//Grade
$select = $zdb->select(field_contents_4);
$select->where('id=12');
$result = $zdb->execute($select);
$dfi = $result->current();
echo print_r($dfi);"
ceci m'affiche :
"ArrayObject Object ( [storage:ArrayObject:private] => Array ( [id] => 12 [val] => Marron ) ) 1"
Mais je bloque là ...
Je dois passer à côté de quelque chose, mais je ne vois pas quoi !?
Si un âme charitable peut me remettre sur le droit chemin !?...
Merci ! ;)
@++
Fred
--
Galette development - http://galette.eu/
List documentation: https://listengine.tuxfamily.org/lists.galette.eu/devel/
--
Galette development - http://galette.eu/
List documentation: https://listengine.tuxfamily.org/lists.galette.eu/devel/