Komende 5 agendapunten vanaf geselecteerde datum

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marco

Marco

10/09/2009 23:37:00
Quote Anchor link
De bedoeling is als volgt: er kan geklikt worden op een datum van een kalender. Vervolgens moeten de eerste 5 activiteiten worden laten zien vanaf de geselecteerde datum. Op dit moment worden alleen de activiteiten van de geselecteerde dag getoond. Mijn vraag is hoe kan ik dit in onderstaande query oplossen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
    $query
= "
        SELECT
            a.agenda_id,
            CONCAT(
                (DATE_FORMAT(a.datum, '%e ')),
                (CASE DATE_FORMAT(a.datum, '%c ')
                WHEN '1' THEN 'januari'
                WHEN '2' THEN 'februari'
                WHEN '3' THEN 'maart'
                WHEN '4' THEN 'april'
                WHEN '5' THEN 'mei'
                WHEN '6' THEN 'juni'
                WHEN '7' THEN 'juli'
                WHEN '8' THEN 'augustus'
                WHEN '9' THEN 'september'
                WHEN '10' THEN 'oktober'
                WHEN '11' THEN 'november'
                WHEN '12' THEN 'december'
                END),
                (DATE_FORMAT(a.datum, ' %Y ')),
                (DATE_FORMAT(a.datum, ' - %H:')),
                (DATE_FORMAT(a.datum, '%i'))
            ) AS datumNL, a.agendapunt, a.info
        FROM
            agenda a
        WHERE
            a.datum = '"
.$dateSelection."'
        LIMIT
            5
    "
;
?>


// output

Indien het niet duidelijk is, laat mij maar weten.

B.v.d.
Gewijzigd op 01/01/1970 01:00:00 door Marco
 
PHP hulp

PHP hulp

22/12/2024 12:55:55
 
John Doe

John Doe

11/09/2009 08:05:00
Quote Anchor link
Ik denk dat je beter de keuze in php kan doen das een stuk makkelijker
 
Marco

Marco

11/09/2009 10:19:00
Quote Anchor link
Zou je een voorbeeld kunnen geven? b.v.d
 
Robert Deiman

Robert Deiman

11/09/2009 10:21:00
Quote Anchor link
WHERE a.datum >= '".$dateSelection."' ORDER BY a.datum ASC LIMIT 5
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 10:34:00
Quote Anchor link
Je hebt niet als die WHEN's nodig. Gebruik gewoon ELT:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
ELT(
    (DATE_FORMAT(datumtijdveld, '%w') + 1),
    'zondag',
    'maandag',
    'dinsdag',
    'woensdag',
    'donderdag',
    'vrijdag',
    'zaterdag'
    ) AS weekdag


@ Daniel: "makkelijker" is een relatief begrip. MySQL heeft veel meer mogelijkheden om met datums te rekenen dan PHP.

Edit: had je vraag verkeerd gelezen. Zie post van Robert Deiman voor het goede antwoord ;-)
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
Robert Deiman

Robert Deiman

11/09/2009 10:39:00
Quote Anchor link
@Jan
Dat van die elt is inderdaad wel een goede. Echter heb je niet de 1e 5 dagen, maar de 1e 5 activiteiten die opgevraagd moeten worden. Dus die datediff is nergens voor nodig. Overigens is DATEDIFF ook een MySQL functie, je kan toch ook zonder DATEDIFF met datums rekenen?
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 10:42:00
Quote Anchor link
Ik had hem al gezien Robert ;-) Zie mijn edit.
 
Marco

Marco

11/09/2009 10:48:00
Quote Anchor link
Bedankt mensen,

Stom dat ik dat niet gezien had; ELT is inderdaad een mooie verbetering.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.