Bonjour,
Voila je rencontre un petit problème avec mon code.
Alors toutes les données proviennent d'une base mysql.
Je voudrais ajouter à mon site de sondage une fonctionnalité pour avoir le top 5 du classement sur les 7 derniers jours.
Pour éviter de faire plein de requêtes SQL je fais un fetchAll de 2 tableau que je compte trier ensuite en PHP.
Ce que je fais
J'ai 2 foreach imbriqués pour essayer d'avoir un tableau formaté du style: array(candidat => nombre_de_votes_des_7_derniers_jours)
Bref le code fonctionne, j'ai un $i qui a une bonne valeur, mais dès que j'essaie de le mettre dans le tableau, il change de valeur, je ne sais vraiment pas pourquoi.
Je met le code et la sortie
$tab = array();
foreach ( $candidats_tab as $candidat) {
echo $candidat['candidat'] . '=';
$i = 0;
$tab += array($candidat['candidat'] => $i);
foreach ($votes_1week as $vote) {
if (strcmp($candidat['candidat'] ,$vote['id_candidat']) === 0 ) {
$i++;
}
}
echo $i . ' ';
$tab += array($vote['id_candidat'] => $i);
}
var_dump($tab);
L'output:
melanchon=1 hamon=1 macron=2 fillon=1 dupont=0 lepen=0 cheminade=0 poutou=0 arthaud=0 blanc=0 alliot=0 asselineau=0
C:\wamp64\www\collectiondb\sondage\src\top5.php:51:
array (size=12)
'melanchon' => int 0
'macron' => int 1
'hamon' => int 0
'fillon' => int 0
'dupont' => int 0
'lepen' => int 0
'cheminade' => int 0
'poutou' => int 0
'arthaud' => int 0
'blanc' => int 0
'alliot' => int 0
'asselineau' => int 0
Ce que je veux
Ma valeur de $i en echo est bonne, mais le tableau ne contient pas cette valeur...Pourquoi?
C'est sur un serveur de test, j'ai mis quelques valeurs pour tester, mais je ne sais pas comment résoudre ce problème :(