Hejsa.
Gik for et par dage siden i gang med at lave en Javascript kalender. Blev også færdig med den, men er blevet i tvivl om hvordan jeg får mysql/php implementeret ind i den. Kan det overhovedet lade sig gøre - det burde det vel?
Jeg skal f.eks have markeret en dato hvis der på den dato er oprettet et arrangement i en database.
Her er kalender koden:
- //set variables
- this.i = 0;
- this.q = 0;
- this.s = new Date().getMonth();
- this.y = 0;
- //Run Functions to make calender
- function Runner(){
- this.months = new Array("Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December");
- this.days = new Array ("Mandag","Tirsdag","Ondsdag","Torsdag","Fredag","Lørdag","Søndag");
- this.date = new Date();
- this.today = this.date.getDate();
- this.year = this.date.getFullYear();
- this.month = this.date.getMonth();
- this.dayone = DayOne(this.year,this.month);
-
- LavKalender(this.month+this.q,this.year+this.y);
- }
- //move back or forward
- function spol(vej){
- if(vej == "+"){ // 1 forward
- this.i++;
- this.q++;
- }else if(vej == '-'){ // 1 back
- this.i--;
- this.q--;
- }else{ // today
- this.i = 0;
- this.q = 0;
- this.s = new Date().getMonth();
- this.y = 0;
- }
- //hånter månederne
- if((this.q + this.s) > 11){
- this.q = -this.month;
- this.y++;
- }else if((this.q + this.s) < 0){
- this.q = 3;
- this.y--;
- }
-
- Runner();
- //document.getElementById('test').innerHTML = "i="+this.i+" y="+this.y+" q="+this.q+" s="+this.s+" m="+(this.i+this.s);
- }
- //find første dag i måneden
- function DayOne(year, month){
- var d = new Date(year, month, 1);
- return d.getDay();
- }
-
- //find antal dage i måneden
- function daysInMonth(month,year){
- var dd = new Date(year, month, 0);
- return dd.getDate();
- }
- //Make Calender
- function LavKalender(month,year){
- if(document.getElementById('kalender')){
- var target = document.getElementById('kalender');
- }else{
- document.write("<div id='kalender'></div>");
- var target = document.getElementById('kalender');
- }
- var kalender = "<table border='1' cellpadding='1' cellspacing='0'>";
- kalender += "<tr><td colspan='2'><input type='button' value='<<' onclick='spol(\"-\")'></td>";
- kalender += "<td colspan='3'><input type='button' value='Idag' onclick='spol()'></td>";
- kalender += "<td colspan='2'><input type='button' value='>>' onclick='spol(\"+\")'></td></tr>";
-
- kalender += "<tr><td colspan='7'>"+ this.months[month] +" "+ year +"</td></tr>"
- kalender += "<tr style='background:green;'><td>M</td><td>T</td><td>O</td><td>T</td><td>F</td><td>L</td><td>S</td></tr>";
- var i = 1;
- var wd = 0; //weekdays
- var d = 1; //days posted
- var daget = DayOne(year,month);
- kalender += "<tr>";
- while(d <= daysInMonth(month+1,year)){
- if(daget == 0)
- daget = 7;
- if(i < daget){
- kalender += "<td> </td>";
- wd++;
- }else{
- if(wd < 6){
- kalender += "<td>"+ d +"</td>";
- wd++;
- d++;
- }else{
- kalender += "<td style='background:red;'>"+ d +"</td></tr><tr>";
-
- wd = 0;
- d++;
- }
- }
-
- i++;
- }
- kalender += "</table>";
-
- target.innerHTML = kalender;
- }
Kalenderen bliver udskrevet i en .html fil med Runner(); funktionen.
Venlig Hilsen
Simon
Indlæg senest redigeret d. 27.03.2011 18:16 af Bruger #10119