08. juni 2012 - 19:30
Der er
22 kommentarer og 1 løsning
Fremhæv dag
Hej der ude. Jeg står og skal bruge noget simpel programmering, gerne uden database, det går simpelthen ud på at dagen i dag skal fremhæves i en simpel liste af uge dage. Mandag Torsdag Onsdag TorsdagFredag Lørdag Søndag Dagen i dag er altså markeret fed Jeg giver max point 200 point og gerne flere (hvis muligt) til den som kan komme med et brugbart svar, eller direkte kode :)
Annonceindlæg tema
Cloud & AI
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Javascriptversion:
<!DOCTYPE html> <html> <head><title>Fremhæv dag</title> <style type="text/css"> .today { font-weight:bold; } .day { font-weight: normal; } </style> <script type="text/javascript"> var pDays; var days = ["mandag", "tirsdag", "onsdag", "torsdag", "fredag", "lørdag", "søndag" ]; function printDay( day, today) { tn = document.createTextNode( days[day] ); sp = document.createElement("span"); sp.className = ( day == today ) ? "today" : "day"; sp.appendChild( tn ); pDays.appendChild( sp ); pDays.appendChild( document.createElement("br") ); } window.onload = function () { pDays = document.getElementById("Days"); var dn = new Date().getDay() - 1; // First day of week is Monday in my house if ( dn < 0) dn = 6; // move sunday to last day for ( i = 0; i < days.length; i++ ) { printDay( i, dn ); } } </script> </head> <body> <div> <h3>Dage</h3> <p id="Days"></p> </div> </body> </html>
Tak for dit svar, nu skal jeg så lige hitte ud af hvordan jeg tildeler dig point :)
Jeg lægger hermed et svar, til brug for point
:) Super.. Du måtte for min skyld gerne få mange flere, men jeg aner ikke hvordan man gør :) bruger ikke denne side så ofte, sidst var 2004 :)
Også et spørgsmål mere også til 200 point, hvis det er muligt at give det i samme tråd. Hvordan for jeg hver enkelt dag pakket ind i en tabel ?
Indsæt dage i Table:
<!DOCTYPE html> <html> <head><title>Fremhæv dag</title> <style type="text/css"> .today { font-weight:bold; } .day { font-weight: normal; } </style> <script type="text/javascript"> var pDays; var days = ["mandag", "tirsdag", "onsdag", "torsdag", "fredag", "lørdag", "søndag" ]; function printDay( day, today) { tn = document.createTextNode( days[day] ); tr = document.createElement("tr"); td = document.createElement("td"); tr.appendChild( td ); td.className = ( day == today ) ? "today" : "day"; td.appendChild( tn ); pDays.appendChild( tr ); } window.onload = function () { pDays = document.getElementById("Days"); var dn = new Date().getDay() - 1; // First day of week is Monday in my house if ( dn < 0) dn = 6; // move sunday to last day for ( i = 0; i < days.length; i++ ) { printDay( i, dn ); } } </script> </head> <body> <table> <th>Dage</th> <tbody id="Days"></tbody> </div> </body> </html>
Variant med baggrundsfarver:
<!DOCTYPE html> <html> <head><title>Fremhæv dag</title> <style type="text/css"> .today { font-weight:bold; background-color: Aquamarine; } .day { font-weight: normal; } #tider { background-color: LightBlue; border: none; border-collapse: collapse; } #tider td { padding: 2px 8px; } </style> <script type="text/javascript"> var pDays; var days = ["mandag", "tirsdag", "onsdag", "torsdag", "fredag", "lørdag", "søndag" ]; var hours = ["08-22", "08-21", "08-20", "08-20", "08-22", "08-16", "10-16" ]; function printDay( day, today) { var tn = document.createTextNode( days[day] ); var tr = document.createElement("tr"); tr.className = ( day == today ) ? "today" : "day"; var td = document.createElement("td"); td.appendChild( tn ); tr.appendChild( td ); tn = document.createTextNode( hours[day] ); td = document.createElement("td"); td.appendChild( tn ); tr.appendChild( td ); pDays.appendChild( tr ); } window.onload = function () { pDays = document.getElementById("Days"); var dn = new Date().getDay() - 1; // First day of week is Monday in my house if ( dn < 0) dn = 6; // move sunday to last day for ( i = 0; i < days.length; i++ ) { printDay( i, dn ); } } </script> </head> <body> <table id="tider"> <th colspan="2">Åbningstider</th> <tbody id="Days"></tbody> </div> </body> </html>
Tusinde tak :) Så har jeg lidt at lege med.. Hvad skylder jeg ?
09. juni 2012 - 03:31
#10
Husk den lille pointe at JavaScript kode viser dagen paa client PC mens PHP/anden server side kode viser dagen paa serveren. Hvis de 2 er paa hver side af jorden, saa er der forskel.
09. juni 2012 - 15:22
#11
Hej Arne Hvad ville en simpel php-løsning værre ? Jeg er helt klar over der er en forskel, men denne løsning skal kun bruges til en hjemmeside som tilses af danskere, så lige i dette tilfælde er det enlig lige meget. Men for at lære lidt mere så kunne det da være sjovt at få et eksempel, ale noget i den stil. Jeg kender lidt til php, og at man ved simple kodning ex. echo date("d/m/Y"); kan fremkalde datoen, men så er jeg også stået af :)
17. juni 2012 - 04:23
#12
<?php //setlocale(LC_ALL, 'da_DK'); // *nix setlocale(LC_ALL, 'dan_DNK'); // windows $days = array('Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag', 'Søndag'); $today = ucfirst(strftime('%A', time())); foreach ($days as $day) { if($day == $today) { echo "<li><b>$day</b></li>\r\n"; } else { echo "<li>$day</li>\r\n"; } } ?>
17. juni 2012 - 15:56
#13
Hej arne, dit eksempel fungere ikke :(
17. juni 2012 - 18:04
#14
Det virker hos mig. Hvilken fejl faar du? Hvilken platform koerer du paa? Hvad returnerer ucfirst(strftime('%A', time())) ?
17. juni 2012 - 18:07
#15
Jeg får alle ugens dage i en liste men ingen er fremhævet! Den er loade til en php linux server
17. juni 2012 - 18:13
#16
Har du rettet setlocale som angivet?
17. juni 2012 - 18:24
#17
Nope, hvad skal den være på en Linux PHP Server ?
17. juni 2012 - 18:57
#18
setlocale(LC_ALL, 'da_DK');
17. juni 2012 - 19:08
#19
har prøvet, virker ikke !
17. juni 2012 - 20:20
#20
Hvad returnerer ucfirst(strftime('%A', time())) ?
17. juni 2012 - 20:26
#21
ingenting
17. juni 2012 - 21:33
#22
Der er et eller andet som ikke er som det skal vaere saa. Men vi kan bare skifte fra navn til nummer. <?php $days = array('Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag'); $today = date('w'); for($i = 0; $i < 7; $i++) { if($i == $today) { echo "<li><b>$days[$i]</b></li>\r\n"; } else { echo "<li>$days[$i]</li>\r\n"; } } ?>
17. juni 2012 - 21:48
#23
Tusinde tak! ;)
Kurser inden for grundlæggende programmering