Salve ragagazzi,
ho l'esigenza di selezionare tutti i "lunedì" oppure tutti i "martedì" e così via dell'anno o meglio per i prossimi 365 giorni.
ho già buttato giù qualcosa in php, però non credo sia la soluzione migliore poichè la mia soluzione ha un bug
ovvero non riconosco che ci sono alcuni mesi con 30 giorni ed alcuni con 31 (c'è anche febbraio
) ovvero un mese me lo sballa ed un mese me lo stampa giusto!
qualcuno sa aiutarmi ? ? oppure sa indicarmi una soluzione migliore?
qui di seguito vi posto il mio codice:
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php $anno = date(Y); $mese = date(n); $giorno = date(j); $odierna = mktime(0,0,0,$mese,$giorno,$anno); $finestagione = mktime(0,0,0,$mese,$giorno+365,$anno); $sette = mktime(0,0,0,$mese,$giorno+7,$anno); //IMPOSTO LA LINGUA IN ITALIANO ANCHE SE NON FUNZIONA setlocale(LC_TIME,"it_IT"); //echo "per arrivare al sabato ci mancano:"; if (strftime('%A')==Saturday) {$sabato=604800;}//-7 elseif (strftime('%A')==Sunday) {$sabato= 518400;}//-6 elseif (strftime('%A')==Monday) {$sabato= 432000;}//-5 elseif (strftime('%A')==Tuesday) {$sabato= 345600;}//-4 elseif (strftime('%A')==Wednesday) {$sabato= 259200;}//-3 elseif (strftime('%A')==Thursday) {$sabato= 172800;}//-2 elseif (strftime('%A')==Friday) {$sabato= 86400;}//-1 //echo $sabato; echo "
"; //echo "per arrivare alla domenica ci mancano:"; if (strftime('%A')==Saturday) {$domenica= 86400;} elseif (strftime('%A')==Sunday) {$domenica= 172800;} elseif (strftime('%A')==Monday) {$domenica= 259200;} elseif (strftime('%A')==Tuesday) {$domenica= 345600;} elseif (strftime('%A')==Wednesday) {$domenica= 432000;} elseif (strftime('%A')==Thursday) {$domenica= 518400;} elseif (strftime('%A')==Friday) {$domenica= 604800;} //echo $domenica; echo "
"; //echo "per arrivare al lunedi ci mancano:"; if (strftime('%A')==Saturday) {$lunedi=172800;}//-2 elseif (strftime('%A')==Sunday) {$lunedi= 86400;}//-1 elseif (strftime('%A')==Monday) {$lunedi= 604800;}//-7 elseif (strftime('%A')==Tuesday) {$lunedi= 518400;}//-6 elseif (strftime('%A')==Wednesday) {$lunedi= 432000;}//-5 elseif (strftime('%A')==Thursday) {$lunedi= 345600;}//-4 elseif (strftime('%A')==Friday) {$lunedi= 259200;}//-3 //echo $lunedi; echo "
"; //echo "per arrivare al martedi ci mancano:"; if (strftime('%A')==Saturday) {$martedi=259200;}//-3 elseif (strftime('%A')==Sunday) {$martedi= 345600;}//-4 elseif (strftime('%A')==Monday) {$martedi= 432000;}//-5 elseif (strftime('%A')==Tuesday) {$martedi= 518400;}//-6 elseif (strftime('%A')==Wednesday) {$martedi= 604800;}//-7 elseif (strftime('%A')==Thursday) {$martedi= 86400;}//-1 elseif (strftime('%A')==Friday) {$martedi= 172800;}//-2 //echo $martedi; echo "
"; //echo "per arrivare al mercoledi ci mancano:"; if (strftime('%A')==Saturday) {$mercoledi=345600;}//-4 elseif (strftime('%A')==Sunday) {$mercoledi= 432000;}//-5 elseif (strftime('%A')==Monday) {$mercoledi= 518400;}//-6 elseif (strftime('%A')==Tuesday) {$mercoledi= 604800;}//-7 elseif (strftime('%A')==Wednesday) {$mercoledi= 86400;}//-1 elseif (strftime('%A')==Thursday) {$mercoledi= 172800;}//-2 elseif (strftime('%A')==Friday) {$mercoledi= 259200;}//-3 //echo $mercoledi; echo "
"; //echo "per arrivare al giovedi ci mancano:"; if (strftime('%A')==Saturday) {$giovedi=432000;}//-5 elseif (strftime('%A')==Sunday) {$giovedi= 518400;}//-6 elseif (strftime('%A')==Monday) {$giovedi= 604800;}//-7 elseif (strftime('%A')==Tuesday) {$giovedi= 86400;}//-1 elseif (strftime('%A')==Wednesday) {$giovedi= 172800;}//-2 elseif (strftime('%A')==Thursday) {$giovedi= 259200;}//-3 elseif (strftime('%A')==Friday) {$giovedi= 345600;}//-4 //echo $giovedi; echo "
"; //echo "per arrivare al venerdi ci mancano:"; if (strftime('%A')==Saturday) {$venerdi=518400;}//-6 elseif (strftime('%A')==Sunday) {$venerdi= 604800;}//-7 elseif (strftime('%A')==Monday) {$venerdi= 86400;}//-1 elseif (strftime('%A')==Tuesday) {$venerdi= 172800;}//-2 elseif (strftime('%A')==Wednesday) {$venerdi= 259200;}//-3 elseif (strftime('%A')==Thursday) {$venerdi= 345600;}//-4 elseif (strftime('%A')==Friday) {$venerdi= 432000;}//-5 //echo $venerdi; // $giorno DEVE ESSERE IL GIORNO SELEZIONATO ?> <form action="date-multitple-2.php" method="post"> <select name="iuorn"> <option value="<?php echo $lunedi ?>">Lunedi</option> <option value="<?php echo $martedi ?>">Martedi</option> <option value="<?php echo $mercoledi ?>">Mercoledi</option> <option value="<?php echo $giovedi ?>">Giovedi</option> <option value="<?php echo $venerdi ?>">Venerdi</option> <option value="<?php echo $sabato ?>">Sabato</option> <option value="<?php echo $domenica ?>">Domenica</option> </select> <input type="submit" /> </form> </body> </html>
poi
Codice PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php $iuorn = $_POST['iuorn']; $anno = date(Y); $mese = date(n); $giorno = date(j); $odierna = mktime(0,0,0,$mese,$giorno,$anno); $finestagione = mktime(0,0,0,$mese,$giorno+365,$anno); echo $iuorn; echo "
"; echo "
"; for ($mul = 1; $mul <= 53; ++$mul) { $ris = ($odierna+$iuorn)+604800 * $mul; //echo "604800 * $mul = $ris "; echo date ("d-m-Y", $ris); echo "
"; } ?> </body> </html>
spero di essermi spiegato bene...grazie in anticipo