Partyflock
 
Forumonderwerp · 596835
 
Waarschuw beheerder
Ik moet de dagen van de laatste 31 dagen krijgen. Vandaag is het dus 17, dus moet ik 17 op het beeld krijgen, daarna 16, 15, 14 enz. Als ik bij de vorige maand kom moet ie dus verder gaan met 31 en nie met -1 uiteraard



Ik heb nu dit:
-----------------------------------------------

<%@ page import="java.util.Da­te" %>
<%
Date date = new Date();

int datum = 0;
int vandaag = date.getDate();
%>

<BODY link=#000000 vlink=#000000 alink=#000000>

<%
for(int i = 0; i <= 31; i++)
{
date.setDate(vandaag-i);
datum = date.getDate();
%>
<font face=Verdana size=2>
<b><%=datum%><BR>
<%
}
%>

---------------------------------------------


Het gaat goed totaan 1, maar daarna is ie in de war en gaat ie datums dubbel noemen:

17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
31
29
29
27
27
26
24
24
22
22
18
20
19
17
-----------------------------------------------

Oplossing?
laatste aanpassing
 
Waarschuw beheerder
ik heb het al, lamaar :D


*edit* onee, tog nie :(
laatste aanpassing
 
Waarschuw beheerder
hmmmm, nu weer wel, alleen schrikkeljaar nie, maar dat duurt nog tijdje :D





leuk zo'n topic in me eentje zeg :P
Waarschuw beheerder
donateur
helaas kan ik je hier niet mee helpen.. java is mn zwakke kant van programmeeren,,,
als dit php was, dan kon ik het wel doen...sorry :(
Waarschuw beheerder
Sorry men, kan je niet helpen, gaat mij me petje te boven. Maar je mag me JAVA boek wel lenen hoor :P. Succes ermee
 
Waarschuw beheerder
donateur
zoals ik het zie noemt ie alleen de 17 dubbel :P
 
Waarschuw beheerder
donateur
en als je dit nou eens probeert?
------------------------------------
<%@ page import="java.util.Da­­te" %>
<%
Date date = new Date();


int vandaag = date.getDate();
%>

<BODY link=#000000 vlink=#000000 alink=#000000>

<%
for(int i = 0; i <= 30; i++)
{
date.setDate(vandaag­);
int datum = date.getDate();
%>
<font face=Verdana size=2>
<b><%=datum%><BR>
<%
}
%>
-------------------

je initialiseert Date date als new date() das goed voor zover ik weet.


vandaag initialiseren is ook in orde lijkt mij. en je zet datum op 0..zou moeten werken maar kan probleempjes geven je kan het ook in de for loop initialiseren met gelijk date.getDate()
ales gaat goed...MAAARRRRRR

kerel je hebt de for loop op (int i = 0; i <= 31; i++) gezet. Dat houdt in..als een maand slechts 30 dagen heeft, dan trekt ie alsnog 32 dagen tevoorschijn en bij 31 dagen ook 32 (dat zijn je dubbele data denk ik). Want de for loop begint immers te tellen bij i=0...dus dan zou hij moeten eindigen bij i=30 aangezien je dan 31 dagen hebt (je begint met tellen bij 0 en niet bij 1 ;)). Ik zou er nog een check op gooien in welke maand je zit.met een functie in java die ik niet 123 bij de hand heb. Wanneer je de maand weet...dan kan je de datum door een specifiekere for loop sturen....
Ik zou zeggen bijvoorbeeld
if(maanden met 31 dagen)
{
for loop voor 31 dagen
}
elseif(maanden met 30 dagen)
{
for loop voor 30 dagen
}
elseif(maand met 28 dagen (februari dus)
{
for loop voor 28 dagen
}

zoiets dus :)
laatste aanpassing
 
Waarschuw beheerder
donateur
stomme post...k had ff beter moeten lezen :)
laatste aanpassing
 
Waarschuw beheerder
ghehe, ja ik had het al
lijkt mij ook iets simpelere oplossing dan jij had :P



---------------------------------------------



<%@ page import="java.util.Da­te" %>
<%
Date date = new Date();

int datum = 0;
int maand = 0;
%>

<BODY link=#000000 vlink=#000000 alink=#000000>

<%
if(date.getMonth() == 0) maand = 31;
if(date.getMonth() == 1) maand = 28;
if(date.getMonth() == 2) maand = 31;
if(date.getMonth() == 3) maand = 30;
if(date.getMonth() == 4) maand = 31;
if(date.getMonth() == 5) maand = 30;
if(date.getMonth() == 6) maand = 31;
if(date.getMonth() == 7) maand = 31;
if(date.getMonth() == 8) maand = 30;
if(date.getMonth() == 9) maand = 31;
if(date.getMonth() == 10) maand = 30;
if(date.getMonth() == 11) maand = 31;

for(int i = 30; i >= 0; i--)
{
datum = (date.getDate() -i);
if(datum < 1)
{
datum = datum + maand;
}
%>
<font face=Verdana size=2>
<b><%=datum%><BR>
<%
}
%>
</BODY>
 
Waarschuw beheerder
donateur
zo kannut ook :)

iig daar lagget dus aan :)