Bonjour!
Je rencontre des difficultés à obtenir le résultat souhaité dans l'alimentation d'un array
Pour la présentation du contexte :
J'ai deux informations principales issues d'une BDD, une ou plusieurs catégories d'atelier et un ou plusieurs ateliers par catégorie
A l'heure actuelle, j'ai les deux informations dans une table atelier par l'intermediaire des champs id_atelier et categ_id (ici en clé étrangère)
Imaginons les entrées de cette table comme suit:
id_atelier categ_id
1 1
2 4
3 2
4 1
5 4
Le resultat que j'essaie d'obtenir est le suivant :
[categ] [0] => 1, [1] => 4, [2] => 2 ; [atelier] [0] => 1, 4, [1] => 2, 5, [2] => 3
J'avais pensé à quelque chose comme ça :
if($array=='' || ($array!='' && !in_array($row_atelier_termine['categ_id'],$array['categ']))){
array_push($array['categ'], $row_atelier_termine['categ_id']);
array_push($array['atelier'], $row_atelier_termine['atelier_id']);
}
elseif($array!='' && in_array($row_atelier_termine['categ_id'], $array['categ'])){
$cle=array_keys($array, $row_atelier_termine['categ_id']);
$cle=$cle[0];
$array['atelier'][$cle]=array();
array_push($array['atelier'][$cle],$row_atelier_termine['atelier_id']);
}
Le souci, c'est que cela ne rajoute pas les entrées mais les écrase.
Merci pour toute aide apportée.