Page 1 sur 1

Tableau multidimensionnel

Posté : 24 mai 2012, 21:34
par serval92
Bonjour à tous.

Je cherche à créer un planning mensuel, grâce à une table MYSQL vacation, avec les champs date, agent, horaire.

$query="SELECT vacation_date, vacation_agent, vacation_debut FROM #__cck_store_form_vacations";
$query.=" WHERE MONTH(vacation_date)='$mois' AND YEAR(vacation_date)='$annee'";
$query.=" ORDER BY vacation_date ASC";

Après ma requête, j'obtiens donc un print_r de la sorte :

Array (
[0] => Array ( [vacation_date] => 2012-05-09 [vacation_agent] => Agent1 [vacation_debut] => 08h00 )
[1] => Array ( [vacation_date] => 2012-05-09 [vacation_agent] => Agent2 [vacation_debut] => 08h00 )
[2] => Array ( [vacation_date] => 2012-05-10 [vacation_agent] => Agent1 [vacation_debut] => 08h00 )
[3] => Array ( [vacation_date] => 2012-05-10 [vacation_agent] => Agent2 [vacation_debut] => 10h30 )

Je souhaiterais afficher tout cela sous la forme :
|__________| Agent1 | Agent2 |
|2012-05-09|08h00 |08h00 |
|2012-05-10|08h00 |10h30 |

Si cela est réalisable, je vous remercie de votre aide.

Re: Tableau multidimensionnel

Posté : 24 mai 2012, 22:52
par xTG
Il faudrait réorganiser ton array pour pouvoir accéder directement aux informations d'un agent.
Exemple :
$tab = array(
  0 => array( 'mot' => 'alphonse', 'lettre' => 'a'),
  1 => array( 'mot' => 'beta', 'lettre' => 'b'),
  2 => array( 'mot' => 'alpha', 'lettre' => 'a')
);
$tabFinal = array();
foreach($tab as $vals){
  if( !isSet($tabFinal[$vals['lettre']]) )
    $tabFinal[$vals['lettre']] = array();
  $tabFinal[$vals['lettre']][] = $vals['mot'];
}
var_dump($tabFinal);
Après on peut gérer l'ordre avec une fonction de tri si on veut aller plus loin.
Mais dans ton cas c'est déjà géré par la requête.

Re: Tableau multidimensionnel

Posté : 27 mai 2012, 14:19
par serval92
Bonjour xTG.

Merci pour ton aide. Je vais essayer de comprendre la structure pour en faire un tableau HTML...