1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <title>Jour_Semaine</title>
  5. <link rel="stylesheet" href="jour_semaine.css"/>
  6. <!-- <script type="text/javascript" src="jour_semaine.js" defer="defer"></script> -->
  7. <?php
  8. if (@$_POST["calculjs"]){
  9. $j=$_POST["jour"];
  10. $m=$_POST["mois"];
  11. $a=$_POST["annee"];
  12. }else{
  13. $j=date("j");
  14. $m=date("n");
  15. $a=date("Y");
  16. }
  17. $tabMois=["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"];
  18. $nomJour=["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"];
  19. $tabM=[[4,0,0,3,5,1,3,6,2,4,0,2],[3,6,0,3,5,1,3,6,2,4,0,2]];
  20. function bis($anneeSec,$anneeAnn){
  21. if (($anneeAnn % 4==0 && $anneeAnn !=0) || $anneeSec % 4 ==0){
  22. $bis=1;
  23. }else{
  24. $bis=0;
  25. }
  26. return $bis;
  27. }
  28. function jds($jour,$mois,$annee){
  29. global $tabM, $nomJour;
  30. $anneeSec=substr($annee,0,strlen($annee)-2);
  31. $anneeAnn=substr($annee,strlen($annee)-2,2);
  32. $k=intdiv($anneeAnn,4);
  33. $q=intdiv($anneeSec,4);
  34. $M=$tabM[bis($anneeSec,$anneeAnn)][$mois-1];
  35. $indJds=($k+$q+$anneeAnn+$M+$jour+2+5*$anneeSec) % 7;
  36. return $nomJour[$indJds];
  37. }
  38. ?>
  39. </head>
  40. <body>
  41. <h1 align="center">Jour de semaine</h1>
  42. <hr>
  43. <br>
  44. <form method="post">
  45. <input type="number" id="jour" name="jour" min="1" max="31" value="<?php echo $j; ?>">
  46. <input type="number" id="mois" name="mois" min="1" max="12" value="<?php echo $m; ?>">
  47. <input type="number" id="annee" name="annee" min="1583" max="9999" value="<?php echo $a; ?>">
  48. <input type="submit" name="calculjs" value="Détermine le jour de la semaine">
  49. </form>
  50. <br>
  51. <hr>
  52. <?php
  53. echo "<h1 align=center>Le ".$j." ".$tabMois[$m-1]." ".$a." est un ".jds($j,$m,$a).".</h1><br>";
  54. ?>
  55. </body>
  56. </html>