nieuwsbrief per schooljaar tonen in query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

N tigerrag

N tigerrag

29/12/2016 09:56:16
Quote Anchor link
Hallo allemaal,

Op een school website wil ik de nieuwsbrieven tonen van het lopende schooljaar. Het lastige hierin is dat een schooljaar niet in 1 kalenderjaar valt maar in 2. (bv., 15-08-2016 t/m 14-08-2017).

Ik heb per nieuwsbrief een kolom 'nieuwsbrief_datum' waarop ik de nieuwsbrieven met een query wil ophalen en tonen.
Onderstaande query heb ik tot nu toe:

Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
$sSelectiequery
= "SELECT nieuwsbrief_datum,status
FROM nieuws WHERE nieuwsbrief_datum BETWEEN CONCAT(YEAR(CURDATE()),'-08-16') AND CONCAT(YEAR(CURDATE())+1,'-08-15')  

 ORDER BY nieuwsbrief_datum DESC "
;
?>


Deze werkt op zich wel, maar ik verwacht dat dit in het nieuwe jaar mis gaat en dat hij het jaar 2017 en 2018 geeft. dan ontbreken de voorgaande nieuwsbrieven vanaf begin schooljaar 2016/2017.

Weet iemand hoe ik kan bereiken dat een query een schooljaar herkent op basis van de kolom nieuwsbrief_datum zonder dat elk jaar de query en script aangepast hoeven worden.

Samengevat:
ik wil de nieuwsbrieven vanaf de laatste 16 augustus tot de volgende 16 augustus (=schooljaar)
 
PHP hulp

PHP hulp

03/12/2021 11:26:36
 
Frank Nietbelangrijk

Frank Nietbelangrijk

29/12/2016 11:58:53
Quote Anchor link
Zoiets?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$curMonth
= date('m');
$startYear = date('Y');
if($curMonth < 8 || ($curMonth == 8 && date('j') <= 16)) { // januari tot en met juli OF eerste helft augustus
    $startYear--;
}

$endYear = $startYear + 1;

$sSelectiequery = "SELECT nieuwsbrief_datum,status
FROM nieuws
WHERE nieuwsbrief_datum BETWEEN '"
.$startYear."-08-16' AND '".$endYear."-08-15'
ORDER BY nieuwsbrief_datum DESC "
;
?>
 
N tigerrag

N tigerrag

29/12/2016 18:13:14
Quote Anchor link
Het lijkt te werken Frank! nieuwsbrieven van voor 15-8-2016 toont hij niet en nieuwsbrieven van na 15-8-2017 ook niet. Zondag weet ik het zeker, na de jaarwisseling.

Hartelijk bedankt voor de goede hulp.

Goede jaarwisseling gewenst!
Gewijzigd op 29/12/2016 18:20:31 door N tigerrag
 
Adoptive Solution

Adoptive Solution

29/12/2016 18:42:32
Quote Anchor link
Waarom wachten tot zondag als je de klok vooruit kunt zetten.
 



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.