Datum van de huidige week
Het zou moeten beginnen met: maandag en eindigen met zondag verder nog de datum en maand erbij.
Weet iemand hier ssn oplossing voor?
Dit script staat ook in de database van PHPHulp, nou weet ik niet precies wat je wilt gaan doen maar ik reken dmv
en array met de dagen in de week uit welke dag het is :).
en array met de dagen in de week uit welke dag het is :).
Nu heb ik een week overzicht nodig, maar wel graag zo dat php zelf al berekend welke datums in deze week zitten en welke maand dit is.
Dan kan ik zeer éénvoudig de juiste wedstrijden uit de database halen voor die week.
Gewijzigd op 01/01/1970 01:00:00 door Martin Meijer
SELECT veldnaam
FROM tabelnaam
WHERE YEAR( datumtijd ) = YEAR( CURDATE( ) )
AND WEEK( datumtijd ) = WEEK( CURDATE( ) )
Geweldig dit, ik zal het gelijk even bekijken of hij doet wat wij willen. Ziet er simpeler uit dan dat je het in PHP moet doen lijkt mij.
Ik zie nog 1 probleem: rond de jaarwisseling. Dan kun je in één week verschillende jaren hebben. Stel bijvoorbeeld dat 1 januari op een donderdag valt, dan heb je twee jaarnummers in 1 weeknummer.
Waarom dunne boekjes jan?
Ik heb namelijk in de database: dag(maandag t/m zondag) datum(01 t/m 31) en maand(Januari t/m December) los in de database staan.
Is het dan nog te doen volgens die querie? Of is het dan aan te raden om ervoor te zorgen dat het onder DATETIME wordt weggeschreven of kan ik het ook zo laten en op een andere manier dit bepalen?
Gewijzigd op 01/01/1970 01:00:00 door Martin Meijer
Zodra je aparte kolommen gaat maken voor je dagen, maanden en jaren is het voor de database niet meer als een datum te interpreteren en kun je dus de vele datum-tijd functie van mysql niet meer gebruiken...
Ik heb het nu omgezet en zal nu eerst even de query van Jan gebruiken
Gewijzigd op 01/01/1970 01:00:00 door Martin Meijer
Ik heb het volgende geprobeerd:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$sql = mysql_query("SELECT * FROM `play_schema` WHERE YEAR(`sp_datum`) = YEAR(CURDATE()) AND WEEK(`sp_datum`) = WEEK(CURDATE())") OR die(mysql_error());
while($d = mysql_fetch_assoc($sql)) {
echo "".$d['sp_datum']."<br />";
}
?>
$sql = mysql_query("SELECT * FROM `play_schema` WHERE YEAR(`sp_datum`) = YEAR(CURDATE()) AND WEEK(`sp_datum`) = WEEK(CURDATE())") OR die(mysql_error());
while($d = mysql_fetch_assoc($sql)) {
echo "".$d['sp_datum']."<br />";
}
?>
Maar ik krijg geen gegevens te zien, ik heb 5 wedstrijden de datum van deze week ingezet.
Arjan Schuurman schreef op 02.01.2007 11:39:
Waarom dunne boekjes jan?
Hierom:
Martin Meijer schreef op 02.01.2007 11:33:
Ok.... heb ik zo'n dik boek over MySQL dat ik er zelf niet naar gekeken heb.
Martin Meijer schreef op 02.01.2007 13:28:
@jan
Ik heb het volgende geprobeerd:
Maar ik krijg geen gegevens te zien, ik heb 5 wedstrijden de datum van deze week ingezet.
Ik heb het volgende geprobeerd:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$sql = mysql_query("SELECT * FROM `play_schema` WHERE YEAR(`sp_datum`) = YEAR(CURDATE()) AND WEEK(`sp_datum`) = WEEK(CURDATE())") OR die(mysql_error());
while($d = mysql_fetch_assoc($sql)) {
echo "".$d['sp_datum']."<br />";
}
?>
$sql = mysql_query("SELECT * FROM `play_schema` WHERE YEAR(`sp_datum`) = YEAR(CURDATE()) AND WEEK(`sp_datum`) = WEEK(CURDATE())") OR die(mysql_error());
while($d = mysql_fetch_assoc($sql)) {
echo "".$d['sp_datum']."<br />";
}
?>
Maar ik krijg geen gegevens te zien, ik heb 5 wedstrijden de datum van deze week ingezet.
Als ik dit doe:
SELECT year( curdate( ) ) AS huidig_jaar, week( curdate( ) ) AS huidige_week
krijg ik als output:
huidig_jaar huidige_week
2007 0
heb jij dat ook?
Maar hoe kan het dan dat die andere query niet werkt? Of ben ik weer iets te kortzichtig?
Ik zal eens kijken of ik wellicht het zelf ook aan de praat kan krijgen. Heb in ieder geval de week nummer en het jaar nummer, nu moe tik alleen alle datums nog weten die in die week zit (deze week is het: 01 t/m 07 januarie)
Gewijzigd op 01/01/1970 01:00:00 door Martin Meijer
Quote:
The following table describes how the mode argument works.
First day
Mode of week Range Week 1 is the first week …
0 Sunday 0-53 with a Sunday in this year
1 Monday 0-53 with more than 3 days this year
2 Sunday 1-53 with a Sunday in this year
3 Monday 1-53 with more than 3 days this year
4 Sunday 0-53 with more than 3 days this year
5 Monday 0-53 with a Monday in this year
6 Sunday 1-53 with more than 3 days this year
7 Monday 1-53 with a Monday in this year
First day
Mode of week Range Week 1 is the first week …
0 Sunday 0-53 with a Sunday in this year
1 Monday 0-53 with more than 3 days this year
2 Sunday 1-53 with a Sunday in this year
3 Monday 1-53 with more than 3 days this year
4 Sunday 0-53 with more than 3 days this year
5 Monday 0-53 with a Monday in this year
6 Sunday 1-53 with more than 3 days this year
7 Monday 1-53 with a Monday in this year
Wanneer jij een andere definitie van de week wilt hanteren, zul je dus een andere MODE moeten opgeven, bv. WEEK(datum, 1). Hierbij wordt week 1 gedefinieerd als de eerste week met meer dan dagen in dit jaar. Een week begint op maandag.
Het enigste wat ik mgraag wil hebben is het volgende:
Ik wil via PHP dat Maandag de eerste dag van de week is, en op elke maandag moet bepaald worden welke datum de week mee begint en welke datum de week mee eindigt.
Nu heb ik de query van jan geprobeert zonder succes, maar nu ben ik de weg even kwijt.
Ik heb het voor elkaar!! Thnx allemaal!
Gewijzigd op 01/01/1970 01:00:00 door Martin Meijer