pandrekano Posté 18 Février 2009 Posté 18 Février 2009 (modifié) Bonjour à tous, J'ai inséré le code : else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'td" bgcolor="#EE3300">'; dans le php de mon calendrier. Je ne vois toujours pas les jours importants colorés ( http://ppzx.net ) <?php // Ecriture de la 1ere ligne echo '<tr>'; // Ecriture de colones vides tant que le mois ne demarre pas for($i = 0 ; $i < $numero_jour1er ; $i++) { echo '<td></td>'; } for($i = 1 ; $i <= 7 - $numero_jour1er; $i++) { echo '<td class="'; if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'td" bgcolor="#EE3300">'; else echo 'td">'; echo $i.'</td>'; } echo '</tr>'; $nbLignes = ceil((date('t', $timestamp) - ($i-1))/ 7); // Calcul du nombre de lignes � afficher en fonction de la 1�re (surtout pour les mois a 31 jours) for($ligne = 0 ; $ligne < $nbLignes ; $ligne++) { echo '<tr>'; for($colone = 0 ; $colone < 7 ; $colone++) { if($i <= date('t', $timestamp)) { echo '<td class="'; if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'td" bgcolor="#EE3300">'; else echo 'td">'; echo $i.'</td>'; } else // On a fini d'ecrire le mois on termine le tableau par des cellules vides { echo '<td></td>'; } $i = $i +1; } echo '</tr>'; } ?>[/quote]D'après vous, y a-t-il une erreur d'écriture ? de formulation de l'array, de sa place ? Cela fait plusieurs jours que je frappe un mur. Votre aide serait super appréciée !code total :[quote]<?php $tsQuebec = time() - (6*60*60); // = 6 heures = 6 x 60 x 60 secondes// Enregistrons les informations de date dans des variables // Si on ne recupere rien dans l'url, on prends la date du jour if(!$_GET['m'] && !$_GET['y']) $timestamp = mktime(0, 0, 0, date('m'), 1, date('Y')); // Sinon on recupere la date donnee else $timestamp = mktime(0, 0, 0, $_GET['m'], 1, $_GET['y']); // === Si le mois correspond au mois actuel et l'annee aussi, on retient le jour actuel pour le griser plus tard (sinon le jour actuel ne se situe pas dans le mois) if(date('m', $timestamp) == date('m',$tsQuebec) && date('Y', $timestamp) == date('Y',$tsQuebec)) $coloreNum = date('d',$tsQuebec); $m = array("01" => "Janvier", "02" => "Février", "03" => "Mars", "04" => "Avril", "05" => "Mai", "06" => "Juin", "07" => "Juillet", "08" => "Ao�t", "09" => "Septembre", "10" => "Octobre", "11" => "Novembre", "12" => "Décembre"); $j = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'); $d_important = array( '13_2_2010', '14_2_2010', '20_2_2009', '24_2_2009', '1_3_2009', '15_3_2009', '26_3_2009', '30_3_2009', '8_4_2009', '4_5_2009', '4_5_2009', '13_5_2009', '7_6_2009', '26_6_2009', '14_9_2009', '30_9_2009', '9_10_2009', '10_10_2009', '12_10_2009', '28_12_2009'); $numero_mois = date('m', $timestamp); $annee = date('Y', $timestamp); if($numero_mois == 12) { $annee_avant = $annee; $annee_apres = $annee + 1; $mois_avant = $numero_mois - 1; $mois_apres = 01; } elseif($numero_mois == 01) { $annee_avant = $annee - 1; $annee_apres = $annee; $mois_avant = 12; $mois_apres = $numero_mois + 1; } else { $annee_avant = $annee; $annee_apres = $annee; $mois_avant = $numero_mois - 1; $mois_apres = $numero_mois + 1; } // 0 => Dimanche, 1 => Lundi, 2 = > Mardi... $numero_jour1er = date('w',$tsQuebec, $timestamp); // Changement du numero du jour car l'array commence a l'indice 0 if ($numero_jour1er == 0) $numero_jour1er = 6; // Si c'est Dimanche, on le place en 6eme position (apres samedi) else $numero_jour1er--; // Sinon on mets lundi a 0, Mardi a 1, Mercredi a 2... ?> <table> <caption><?php echo '<a href="?m='.$mois_avant.'&y='.$annee_avant.'"><<</a> '.$m[$numero_mois].' '.$annee.' <a href="?m='.$mois_apres.'&y='.$annee_apres.'">>></a>'; ?></caption> <tbody> <tr> <th>Lu</th><th>Ma</th><th>Me</th><th>Je</th><th>Ve</th><th>Sa</th><th>Di</th> </tr> <?php // Ecriture de la 1ere ligne echo '<tr>'; // Ecriture de colones vides tant que le mois ne demarre pas for($i = 0 ; $i < $numero_jour1er ; $i++) { echo '<td></td>'; } for($i = 1 ; $i <= 7 - $numero_jour1er; $i++) { echo '<td class="'; if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'td" bgcolor="#EE3300">'; else echo 'td">'; echo $i.'</td>'; } echo '</tr>'; $nbLignes = ceil((date('t', $timestamp) - ($i-1))/ 7); // Calcul du nombre de lignes � afficher en fonction de la 1�re (surtout pour les mois a 31 jours) for($ligne = 0 ; $ligne < $nbLignes ; $ligne++) { echo '<tr>'; for($colone = 0 ; $colone < 7 ; $colone++) { if($i <= date('t', $timestamp)) { echo '<td class="'; if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'td" bgcolor="#EE3300">'; else echo 'td">'; echo $i.'</td>'; } else // On a fini d'ecrire le mois on termine le tableau par des cellules vides { echo '<td></td>'; } $i = $i +1; } echo '</tr>'; } ?> </tbody> </table> Merci d'avance, pandrekano Modifié 18 Février 2009 par Dudu
pandrekano Posté 21 Février 2009 Auteur Posté 21 Février 2009 Bonjour, J'ai résolu ce problème avec : J'ai retenu 'd_important' : if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'd_important">'; pour aller avec mon Doctype et j'ai retiré un mois à '.$m[$numero_mois-1].' : <caption><?php echo '<a href="?m='.$mois_avant.'&y='.$annee_avant.'"><<</a> '.$m[$numero_mois-1].' '.$annee.' <a href="?m='.$mois_apres.'&y='.$annee_apres.'">>></a>'; ?></caption> Amitiés, pandrekano
pandrekano Posté 21 Février 2009 Auteur Posté 21 Février 2009 Bonjour, J'ai résolu ce problème avec : J'ai retenu 'd_important' : if(isset($coloreNum) && $coloreNum == $i) echo 'd_jour">';else if(in_array($i . "_" . $numero_mois . "_" . $annee, $d_important)) echo 'd_important">'; pour aller avec mon Doctype et j'ai retiré un mois à '.$m[$numero_mois-1].' : <caption><?php echo '<a href="?m='.$mois_avant.'&y='.$annee_avant.'"><<</a> '.$m[$numero_mois-1].' '.$annee.' <a href="?m='.$mois_apres.'&y='.$annee_apres.'">>></a>'; ?></caption> Amitiés, pandrekano
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant