dark_nemo
Messages postés16Date d'inscriptionmardi 18 novembre 2003StatutMembreDernière intervention23 septembre 2010
-
13 mars 2009 à 12:31
Almay -
26 mars 2015 à 19:23
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
lullaby08
Messages postés1Date d'inscriptiondimanche 12 avril 2009StatutMembreDernière intervention11 avril 2009 11 avril 2009 à 18:13
Il marche parfaitement de mon côté... Par contre il serait possible de modifier les dates en évenement en changeant la couleur des dites "dates évenements" ??
griffondorr
Messages postés427Date d'inscriptiondimanche 6 juillet 2008StatutMembreDernière intervention 4 mai 2009 3 avril 2009 à 11:31
bon début pour cette source et a améliorer ;)
d54
Messages postés5Date d'inscriptionvendredi 7 novembre 2008StatutMembreDernière intervention23 mars 2009 16 mars 2009 à 17:40
Arf. Très drole.
C'est moi qui l'ai fait, et je peut te garentire qu'il n'y a pas de virus dedant.
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 13 mars 2009 à 13:16
Je vais être un peu critique bien que globalement le code est pas mal mais il y'a quelques petites choses qui me titillent.
1/ Concevoir ton calendrier dans une classe aurait été beaucoup plus pertinent car actuellement ton code n'est pas véritablement réutilisable... L'idéal serait de faire une classe Calendar et de l'appeler de cette manière :
$calendar = new Calendar($_GET['m'], $_GET['y']);
echo $calendar->render(); // Génère le tableau
// ou
echo $calendar; // si ta classe implémente la méthode __toString()
2/ Pour gérer les dates, préfère les fonctions natives de PHP comme strtotime... Tu t'embêtes à tester quel jour, quel mois et quel année on est pour pouvoir en déduire les suivants et précédents. Pour avoir le mois suivant, je fais simplement :
$timestamp = mktime(0,0,0,date('m'), 1, date('Y')); // premier jour du mois courant
$suivant = date('m', strtotime('+1 month', $timestamp)); // numéro du mois suivant
Encapsule tout ça dans une classe en sortant les $_GET à l'extérieur de la classe bien sûr. Au final ce sera beaucoup plus réutilisable que maintenant mais aussi testable unitairement avec PHPUnit ou Lime ;)
++
dark_nemo
Messages postés16Date d'inscriptionmardi 18 novembre 2003StatutMembreDernière intervention23 septembre 2010 13 mars 2009 à 12:31
Bon je me lance dans un petit commentaire.
J'ai juste effectué une lecture rapide sans le tester.
C'est pas mal comme source mais j'pense que tu devrais vérifier le format de $_GET['m'] et $_GET['y'].
Vérifier que $_GET['m'] est bien un mois et $_GET['y'] une année valide sinon ça risque de planter ton mktime
26 mars 2015 à 19:23
17 mai 2010 à 17:48
border:5px solid #EFF3FF;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
-webkit-box-shadow:5px 5px 5px black;
-moz-box-shadow:5px 5px 5px black;
box-shadow:5px 5px 5px black;
11 avril 2009 à 18:13
3 avril 2009 à 11:31
16 mars 2009 à 17:40
C'est moi qui l'ai fait, et je peut te garentire qu'il n'y a pas de virus dedant.
13 mars 2009 à 13:16
1/ Concevoir ton calendrier dans une classe aurait été beaucoup plus pertinent car actuellement ton code n'est pas véritablement réutilisable... L'idéal serait de faire une classe Calendar et de l'appeler de cette manière :
$calendar = new Calendar($_GET['m'], $_GET['y']);
echo $calendar->render(); // Génère le tableau
// ou
echo $calendar; // si ta classe implémente la méthode __toString()
2/ Pour gérer les dates, préfère les fonctions natives de PHP comme strtotime... Tu t'embêtes à tester quel jour, quel mois et quel année on est pour pouvoir en déduire les suivants et précédents. Pour avoir le mois suivant, je fais simplement :
$timestamp = mktime(0,0,0,date('m'), 1, date('Y')); // premier jour du mois courant
$suivant = date('m', strtotime('+1 month', $timestamp)); // numéro du mois suivant
Encapsule tout ça dans une classe en sortant les $_GET à l'extérieur de la classe bien sûr. Au final ce sera beaucoup plus réutilisable que maintenant mais aussi testable unitairement avec PHPUnit ou Lime ;)
++
13 mars 2009 à 12:31
J'ai juste effectué une lecture rapide sans le tester.
C'est pas mal comme source mais j'pense que tu devrais vérifier le format de $_GET['m'] et $_GET['y'].
Vérifier que $_GET['m'] est bien un mois et $_GET['y'] une année valide sinon ça risque de planter ton mktime