Avatar billede dizzim Nybegynder
25. februar 2005 - 21:57 Der er 3 kommentarer og
1 løsning

Vise måneder, viser juli 3 gange, hvorfor?

Som sagt i titlen skal jeg bare vise en bestem dag i en måned, alt det virker skam fint nok. Men mit problem er at jeg gerne vil have månedernes navne til at stå der. Det går egentlig fint nok men af en eller anden grund viser den juli 3 gange, som om den måned bare "overskriver" august og september.
Du kan se det her: www.digitalprodigy.1go.dk/pub/ekspert.php?d=3

og koden her:

                    <ul>

                <?php
                if (isset($_GET['d'])) {
                $d = array('THURSDAY','FRIDAY','SATURDAY');
                define('WEEK', 60*60*24*7);
                    $nu = strtotime('NEXT ' . $d[$_GET['d']] . '-1 WEEK');
                    for ($i=0;$i<100;$i++) {
               
                $d_show = $_GET['d']; 
                $date_show = $_GET['date'];
                 
                      if ($prev_month != date('m', $nu + $i*WEEK)) {
                     
                                switch (date('m', $nu + $i*WEEK)) {
                                      case 01:
                                        $a = "Januar";
                                        break;
                                      case 02:
                                        $a = "Febuar";
                                        break;
                                      case 03:
                                        $a = "Marts";
                                        break;
                                      case 04:
                                        $a = "April";
                                        break;
                                      case 05:
                                        $a = "Maj";
                                        break;
                                      case 06:
                                        $a = "Juni";
                                        break;
                                      case 07:
                                        $a = "Juli";
                                        break;
                                      case 08:
                                        $a = "August";
                                        break;
                                      case 09:
                                        $a = "September";
                                        break;
                                      case 10:
                                        $a = "Oktober";
                                        break;
                                      case 11:
                                        $a = "November";
                                        break;
                                      case 12:
                                        $a = "December";
                                        break;
                                    }
                                    $test = $prev_month + 1;
                                    echo "</ul><strong>mdr. $test | $a</strong><ul>";
                                       
                                        if ($date_show == date('Y-m-d', $nu + $i*WEEK)) {
                                           
                                            echo "d. ". date('d', $nu + $i*WEEK) . "<br>";
                                           
                                        } else {
                                           
                                            echo "<a href='$_SERVER[PHP_SELF]?d=$d_show&date=" . date('Y-m-d', $nu + $i*WEEK) . "'> d. " . date('d', $nu + $i*WEEK) . "</a><br>";
                                        }
                                       
                                    $prev_month = date('m', $nu + $i*WEEK);
                           
                            } else {
                               
                                        if ($date_show == date('Y-m-d', $nu + $i*WEEK)) {
                                           
                                            echo "d. ". date('d', $nu + $i*WEEK) . "<br>";
                                           
                                        } else {
                                           
                                            echo "<a href='$_SERVER[PHP_SELF]?d=$d_show&date=" . date('Y-m-d', $nu + $i*WEEK) . "'> d. " . date('d', $nu + $i*WEEK) . "</a><br>";
                                        }
                                       
                                    $prev_month = date('m', $nu + $i*WEEK);
                            }
                    }
                }
                ?>
                    </ul>


Nogen der kan forklare hvad der går galt ?

(logikken bag det med månederne er at den kun skriver månedens navn når det er en ny måned. Derfor gennemmer jeg hele tiden den dato der bliver udskrevets måned til variablen $prev_month. Hvis den så har ændret sig i forhold til den dato den skal til at skrive skal den gennem en switch med månedernes navne og så udskrive den)

På forhånd tak!
Avatar billede erikjacobsen Ekspert
25. februar 2005 - 22:00 #1
Du skal ikke bruge 01, 02, 03 osv, men blot 1, 2, 3, osv
Avatar billede dizzim Nybegynder
25. februar 2005 - 22:02 #2
ahh... tak... pointene er dine... bare lig et svar =)
Avatar billede erikjacobsen Ekspert
25. februar 2005 - 22:03 #3
;) Ellers tak, jeg samler slet ikke på point. Svar selv, accepter eget svar.
Avatar billede dizzim Nybegynder
25. februar 2005 - 22:05 #4
okay, men mange tak for hjælpen ihvertfald!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester