Erreur incrément variable
Bonjour à tous,
Je génère un tableau grâce à ma base de données. Les lignes paires ont une couleur, les impaires en ont une autre, mais il y a aussi un spoiler qui s'affiche entre chaque ligne de ce tableau et qui possède une 3ème couleur.
Pour ce faire j'ai utilisé (grâce à jreaux62) un compteur pour incrémenter la classe de ma balise <tr>. Elle vaut donc 1 ou 0 en fonction de la couleur. Voici mon code ça sera plus clair :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
<table class="tabletournee">
<caption>Dates et lieux de la tournée 2017</caption>
<!--<tr>
<th>VILLE</th>
<th>DATES</th>
<th>LIEU</th>
<th></th>
</tr>-->
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=medrano2017;charset=utf8', 'root', '');
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$reponse = $bdd->query('SELECT id_event,
id_tournee,
evenement.ville_event AS ville,
evenement.lien_resa_event AS lienresa,
evenement.adresse_event AS adresse,
tournee.description_tournee AS descriptiontournee,
tournee.nom_tournee AS nomtournee,
(SELECT MIN(s.dateheure_seance) FROM seance s WHERE s.id_event = evenement.id_event) AS premiereSeance,
(SELECT MAX(s.dateheure_seance) FROM seance s WHERE s.id_event = evenement.id_event) AS derniereSeance
FROM tournee
JOIN evenement USING(id_tournee)
ORDER BY premiereSeance,derniereSeance');
$datecourante = date('Y-m-d H:i:s');
while ($donnees = $reponse->fetch())
{
setlocale(LC_ALL, 'French', 'fr-FR.utf8','fra', 'fr-FR', 'fr_FR', 'fr', 'fr_FR@euro');
$datedebut = strftime("%d %B", strtotime($donnees['premiereSeance']));
$datefin = strftime("%d %B %Y", strtotime($donnees['derniereSeance']));
if( $donnees['derniereSeance'] >= $datecourante )
{
?>
<tr class="infotournee infotournee<?php echo ($compteur%2); $compteur++; ?>">
<td><p style="color:white;" class="villetournee"><?php echo ''.$donnees['ville'].'';?></p> <p class="nomtournee"><?php echo ''.$donnees['nomtournee'].'';?></p></td>
<td><?php echo (strpos($datedebut,' '.$datefin))? 'Le '.utf8_encode($datedebut) : 'Du '.utf8_encode($datedebut).'<br/>au '.utf8_encode($datefin); ?></td>
<td><?php echo ''.$donnees['adresse'].'';?></td>
<td><a href="#spoiler<?php echo $donnees['id_event']; ?>" class="spoiler-link lienresa">PLUS D'INFOS</a><a class="lienresa" href="#">RESERVER</a></td>
</tr>
<tr>
<td colspan="4">
<div class="spoilers">
<div class="spoiler" id="spoiler<?php echo $donnees['id_event']; ?>">
<p><?php echo ''.utf8_encode($datedebut).'';?></p>
</div>
</div>
</td>
</tr>
<?php
}
}
$reponse->closeCursor();
?>
</table> |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
table.tabletournee tr:not(.infotournee)
{
background-color:rgba(193,5,110,0.35);
}
table.tabletournee tr.infotournee0 /* Impaire */
{
background-color: rgba(193,5,110,0.75);
}
table.tabletournee tr.infotournee1
{
background-color: rgba(193,5,110,0.5);
} |
Quand je valide et essaye ce code, j'ai une erreur :
Code:
Notice: Undefined variable: compteur in C:\wamp\www\Medrano2017\index.php on line 72
Or, quand je regarde le code généré malgré tout, l’incrément ce fait et mes classes portent bien les noms infotournee0 ou infotournee1.
J'ai essayé de déclarer dans ma boucle la variable $compteur à 1 ou a 0, mais elle garde cette valeur tout au long de la lecture.
Merci d'avance à vous tous !