Ik heb een database met evenementen. Deze zijn opgeslagen met een evenementnaam, omschrijving en een datum(01012011). Nu wil ik deze graag als volgt weergeven..
Maart
Evenementnaam
Evenementnaam
April
Evenementnaam
Iemand een oplossing voor mij?
- Events weergeven per maand
-
06-04-2011, 14:41 #1
- Berichten
- 1.478
- Lid sinds
- 17 Jaar
Events weergeven per maand
-
-
06-04-2011, 17:07 #2
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Events weergeven per maand
Je database opslag methode opsplitsen. Opslaan in die format wat je nu hebt/gebruikt en daarnaast los nog de maand/jaar en eventueel de dag. Dan kun je ze daarop selecteren met ORDER BY date_year ASC, date_month ASC (eerst jaar optellen en daarna de maanden). In de WHERE zet je dan (date_year = huidige AND date_month >= huidig) OR date_year > huidige
-
06-04-2011, 17:23 #3
- Berichten
- 1.478
- Lid sinds
- 17 Jaar
Re: Events weergeven per maand
Dat is volgens mij niet helemaal wat ik bedoel. Ik heb een veld eventdate met daarin de datum(01012011). Dus de maand heb ik in principe al. Maar nu wil ik de maanden weergeven. En daaronder de evenementen die in die maand plaats vinden.
-
06-04-2011, 19:14 #4
- Berichten
- 376
- Lid sinds
- 18 Jaar
Re: Events weergeven per maand
Je database opslag methode opsplitsen. Opslaan in die format wat je nu hebt/gebruikt en daarnaast los nog de maand/jaar en eventueel de dag. Dan kun je ze daarop selecteren met ORDER BY date_year ASC, date_month ASC (eerst jaar optellen en daarna de maanden). In de WHERE zet je dan (date_year = huidige AND date_month >= huidig) OR date_year > huidige
-
06-04-2011, 19:26 #5
- Berichten
- 1.478
- Lid sinds
- 17 Jaar
-
06-04-2011, 20:28 #6
- Berichten
- 506
- Lid sinds
- 16 Jaar
Re: Events weergeven per maand
Inderdaad gewoon een datetime veld van maken.
PHP Code:$sql = " SELECT MONTH(datumveld)";
$sql .= " , YEAR(datumveld)";
$sql .= " , naam";
$sql .= " , omschrijving";
$sql .= " FROM tabel";
$sql .= " ORDER BY datumveld";
-
06-04-2011, 20:32 #7
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Events weergeven per maand
Kijk, je blijft leren, wist niet dat dit mogelijk was.
-
06-04-2011, 22:06 #8
- Berichten
- 1.478
- Lid sinds
- 17 Jaar
Re: Events weergeven per maand
Inderdaad gewoon een datetime veld van maken.
PHP Code:$sql = " SELECT MONTH(datumveld)";
$sql .= " , YEAR(datumveld)";
$sql .= " , naam";
$sql .= " , omschrijving";
$sql .= " FROM tabel";
$sql .= " ORDER BY datumveld";
-
06-04-2011, 22:20 #9
- Berichten
- 33
- Lid sinds
- 18 Jaar
Re: Events weergeven per maand
Inderdaad je maandveld als datetime veldtype gebruiken dan kun je middels bovenstaande query de resultaten eruit filteren voor een bepaalde maand.
Je maakt eerst een array aan van de 12 maanden en binnen deze array doe je per maand de query uitvoeren. Zo krijg je per maand alle evenementen. Op internet zijn voldoende tutorials hierover te vinden. Zoek maar eens op "PHP event calendar"
-
06-04-2011, 22:23 #10
Xironics Internet Diensten
- Berichten
- 88
- Lid sinds
- 17 Jaar
Re: Events weergeven per maand
Je zou in een loopje dit kunnen doen, het zorgt alleen wel voor veel query's voor een klein resultaat.
Dit kan er dan zo uit komen te zien, voor een overzicht van alle evenementen per maand voor het huidige jaar:
PHP Code:for( $maand=1;$maand<=12;$maand++ ){
// Iedere maand
echo 'Maand: '.$maand;
$sql_result = mysql_query("SELECT evenement,datum FROM `evenementen` WHERE MONTH(datum) = $maand AND YEAR(datum) = date("Y") ORDER BY datum ASC");
$results = mysql_fetch_assoc($sql_result);
if( mysql_num_rows($results) ){
// Controleren of er evenementen zijn in deze maand
while( $event = mysql_fetch_assoc($sql_result) ){
echo $event['evenement'].' op '.$event['datum'];
}
} else {
echo 'Er zijn geen evenementen in deze maand.';
}
}
-
06-04-2011, 22:58 #11
- Berichten
- 376
- Lid sinds
- 18 Jaar
Re: Events weergeven per maand
Nee, je doet het als volgt. Zet de MySQL locale op Nederlands, laad dan alle evenementen en ook MONTHNAME(datum) en lees die resultaten uit, laat PHP opnieuw de maand weergeven als die niet gelijk is aan de vorige maand.
-
07-04-2011, 21:02 #12
Xironics Internet Diensten
- Berichten
- 88
- Lid sinds
- 17 Jaar
Re: Events weergeven per maand
Dat is inderdaad een andere (/betere) manier, hierdoor heb je maar 1 query nodig.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic