Datum van morgen

Status
Niet open voor verdere reacties.

jeroendenoot

Terugkerende gebruiker
Lid geworden
14 mrt 2005
Berichten
1.492
Hoe kan ik met JavaScript de datum van morgen laten weergeven? De datum van vandaag lukt me al:

Code:
<script type="text/javascript">
<!--

var time = new Date()

var weekdays = new Array("Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vijdag","Zaterdag");
weekdays = weekdays[time.getDay()];
var monthdays = time.getDate();
var monthnames = new Array("januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december");
monthnames = monthnames[time.getMonth()];
var years = time.getFullYear();

document.write(weekdays + "" + monthdays + "" + monthnames + "" + years);

//-->
</script>

En nu nog de datum van moren... Hoe doe je dat?
 
Oké, maar als het dat bijvoorbeeld 31 januari is, komt er 32 januari te staan. Dat wil ik liever niet.
 
Ik heb het al voor elkaar. Het is wel een erg lang script geworden voor maar zo'n kort stukje tekst:

Code:
<script type="text/javascript">
<!--

var time = new Date();

var weekdays = new Array("Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vijdag","Zaterdag","Zondag");
weekdays = weekdays[time.getDay() + 1];
var monthdays = time.getDate() + 1;
var monthnames = new Array("januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december","januari");
monthnames = monthnames[time.getMonth()];
var years = time.getFullYear();

if(monthnames == "januari" && monthdays == 32) {
monthnames = "februari";
monthdays = 1;
}

if(monthnames == "februari" && monthdays == 29) {
monthnames = "maart";
monthdays = 1;
}

if(monthnames == "maart" && monthdays == 32) {
monthnames = "april";
monthdays = 1;
}

if(monthnames == "april" && monthdays == 31) {
monthnames = "mei";
monthdays = 1;
}

if(monthnames == "mei" && monthdays == 32) {
monthnames = "juni";
monthdays = 1;
}

if(monthnames == "juni" && monthdays == 31) {
monthnames = "juli";
monthdays = 1;
}

if(monthnames == "juli" && monthdays == 32) {
monthnames = "augustus";
monthdays = 1;
}

if(monthnames == "augustus" && monthdays == 32) {
monthnames = "september";
monthdays = 1;
}

if(monthnames == "september" && monthdays == 31) {
monthnames = "oktober";
monthdays = 1;
}

if(monthnames == "oktober" && monthdays == 32) {
monthnames = "november";
monthdays = 1;
}

if(monthnames == "november" && monthdays == 31) {
monthnames = "december";
monthdays = 1;
}

if(monthnames == "december" && monthdays == 32) {
monthnames = "januari";
monthdays = 1;
years = years + 1;
}

document.write(weekdays + " " + monthdays + " " + monthnames + " " + years);

//-->
</script>

Maar als het nu 29 februari 2008 is (schrikkeljaar), dan geeft hij 30 februari 2008.
En als het 28 februari 2008 is dan komt er 1 januari 2008, terwijl dat 29 februari 2008 moet zijn.
Die dingen moet ik nog even veranderen, maar dat lukt me wel.
 
Laatst bewerkt:
var time = new Date();
time.setDate(time.getDate() + 1);

:) Egel.
 
PHP:
var time = new Date();

time.setDate(time.getDate() + 1);

var weekdays = ["Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vijdag","Zaterdag"][time.getDay()];
var monthdays = time.getDate();
var monthnames = ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"][time.getMonth()];
var years = time.getFullYear();

document.write(weekdays + " " + monthdays + " " + monthnames + " " + years);

Dat je op 'morgen' komt door bij het datumobject via setDays 1 dag op te tellen. De maanden en jaren gaan automatisch mee.


Groet Egel.
 
Laatst bewerkt:
Ok :),

ik heb nog ff de extra zondag en januari aan het einde
van de weekdays en monthnames verwijdert, die heb je niet nodig.

Je kunt het script testen door met
var time=new Date(2005,11,31);
te beginnen, dan zie je dat het
Zondag 1 januari 2006
genereerd.


Groet, Egel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan