Avatar billede prop46 Nybegynder
01. oktober 2006 - 16:50 Der er 1 løsning

Kalender via MySql og PHP

Jeg laver en kalender, hvor man kan blade frem og tilbage mellem månederne og se de enkelte datoer, listet under hinanden.

I min database ligger nogle datoer for dage med aktiviter(naturligvis forskellige fra måned til måned). Teksten til disse dage/aktiviteter vil jeg gerne skrive ud i min kalender, ud for den tilhørende dato.

Jeg tænker at jeg kan:
- Hente mine datoer + tekst i databasen.
- Generere datoerne for valgte måned.
- Udskrive datoerne for måneden, mens jeg tjekker om de er
  i blandt udtrækket fra databasen.
- Hvis datoen er i blandt udtrækket udskrives dato + tekst.

Her generere jeg mine datoer:
$m = (isset($_GET['m']))?intval($_GET['m']):date('n');
$y = (isset($_GET['y']))?intval($_GET['y']):date('Y');
$day = date( "j", mktime(0, 0, 0, $m, 1, $y));
$days_in_month = date( "t", mktime(0, 0, 0, $m, 1, $y));

if($m < 0 && $y < 0){
    $m = date('n');
    $y = date('Y');
}

$prevM = $m - 1;
$nextM = $m + 1;

$prevY = $y;
$nextY = $y;

if($prevM < 1){
    $prevM = 12;
    $prevY = $y - 1;
}

if($nextM > 12){
    $nextM = 1;
    $nextY = $y + 1;
}

og...

while($day <= $days_in_month){
?>
<tr>
  <td style="height:20px; width:26px; padding-right:4px;" align="right" valign="middle" class="border11 p2"><?php echo $day; ?></td>
  <td style="height:20px; width:322px;"class="border12 p6">&nbsp;</td>
</tr>
<?php
$day++;
}

Her henter jeg fra databasen:
aabn_forbindelse_og_vaelgdb();
$resultat_hent_kalender = mysql_query($hent_kalender);
luk_forbindelse();

og...

while($resultat_kalender = mysql_fetch_array($resultat_hent_kalender)) {
    $dato =  stripslashes($resultat_kalender["dato"]);
    $tekst =  stripslashes($resultat_kalender["tekst"]);
    $link =  stripslashes($resultat_kalender["link"]);
    $tilmeld =  stripslashes($resultat_kalender["tilmeld"]);
?>
    <tr>
        <td style="height:20px; width:26px; padding-right:4px;" align="right" valign="middle" class="border11 p2"><?php echo $dato; ?></td>
        <td style="height:20px; width:322px;"class="border12 p6"><?php echo ucfirst($tekst); ?></td>
    </tr>
<?php
}

Men hvad så...
Avatar billede prop46 Nybegynder
17. oktober 2006 - 16:53 #1
...
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
Computerworld tilbyder specialiserede kurser i database-management

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