1 pièce(s) jointe(s)
Modifier array dans array avec noms dynamiques
Bonjour,
Soit un tableau comme suit:
Pièce jointe 194746
Je souhaite créer un array($classe) qui contiendra lui même des array($nom_eleve), un pour chaque élève.
L'array($nom_eleve) aura ainsi pour chaque devoir une clef('num_devoir') et pour valeur la note correspondante ('note').
Pour Marie, le résultat serait donc:
$Marie = array(
#D1 => 8
#D2 => 5
#D4 => 10;
)
Ceci afin de pouvoir réaliser un tableau avec toutes les notes par élève.
J'ai un code qui fonctionne à moitié, mais qui bloque au moment où l'array est déjà trouvé et qu'il faut y insérer une nouvelle clef+valeur.
Le problème notamment et que les arrays et leurs clefs ont des noms dynamiques et je ne m'y retrouve pas lorsqu'il faut ajouter une clef à tel array.
Mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?php
$bdd = new PDO('mysql:host=localhost;dbname=test19_11', 'root', 'root', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
$requete = $bdd->prepare('SELECT * FROM `voti` ORDER BY `Nom_Eleve` ASC');
$requete->execute();
$classe = array();
while ($data = $requete->fetch())
{
if (!isset($classe[$data['Nom_Eleve']]))
{
//l'array de l'élève n'existe pas, il est donc créé. Cette partie marche.
$classe[$data['Nom_Eleve']] = array(
'D'.$data['Num_Devoir'] => $data['Note'] );
}
else
{
//L'array existe déjà, 'D'.$data['Num_Devoir']=> $data['Note'] est ajoutée à l'array.
$classe[$data['Nom_Eleve']['D'.$data['Num_Devoir']]] = $data['Note'] );
}
}
'<p>'.var_dump($classe).'</p>';?> |
Comment puis-je faire pour ajouter $classe[$data['Marie'][D4]] => $data['Note'] par exemple ?
Je me suis perdu. Peut-être faut-il renommer les arrays de suite du genre $eleve = $classe[$data['Nom_Eleve']] pour pouvoir ensuite l'appeler facilement?
D'avance merci beaucoup pour votre temps