23. maj 2007 - 12:49Der er
7 kommentarer og 4 løsninger
Kalender eller datepicker til visning af wmv fil
Hej
Jeg søger et script, som kan afspille en wmvfil der er datostemplet. Jeg tænker på en form for kalender. Når man vælger en bestemt dato, skal der i browseren afspilles denne dags datostemplet wmv video fil. wmv filen har filnavnet: ååååmdddayvideo.wmv (eks. 2007522dayvideo.wmv) Hvis det er muligt må browseren også gerne vise en datostemplet gif fil samtidig med at wmv filen bliver afspillet. Gif filen har datoformatet ååååmmdd.gif (eks. 20070522.gif) På forhånd tak. Ps. hvis der ikke findes en wmv eller gif fil for den valgte dag - må der gerne vises, at filerne ikke findes.
Jeg har fået en kammerat til at lave et asp script, som kan vise .gif filen - men det kniber lidt med at få wmv filen med. Se eks: www.buskelundtoften.dk/vejret/test
Når man klikker på en dato i kalenderen - skal wmv filen afspilles i browseren. Se link: www.buskelundtoften.dk/vejret/video.asp Hvis der ikke findes en wmv for den valgte dag - må der gerne stå at der desværre ikke er video for denne dag.
Hvis det så skal være rigtig godt - kunne jeg godt tænke mig, at på samme side i browseren som wmv filen afspilles blev vist den datostemplede .gif fil.
Det er ikke afgørende for mig hvilket programmeringssprog scriptet kører - mit webhotel kører PHP, ASP, ASP.NET 1.1+2.0, Pearl
Jeg prøver at se, om jeg ikke får tid til at lave noget. Jeg er i gang med mine eksamener, så det er ikke helt 100%.
Hvordan skal kalenderen være, skal den fylde hele siden, eller må den være i et lille popup-vindue? Jeg mener, skal den bruges til andet, eller skal den kun bruges til at vælge en dato for at se videoklip for den givne dato?
Det lyder sørme godt - men eksamen er vigtigere en mit lille script.
Jeg skal kun bruge kalenderen til at vise videoklip (og evt .gif filen) i browseren. Den må godt bare være en lille kalender, så jeg kan få plads til andet på siden.
Godt! Nu består det altså af 3 filer! Nr. 1 er filen, som viser kalenderen, filmen og animationen. Jeg er gået ud fra, at din film er af avi-format, men det kan nemt ændres. Ligeledes har jeg sat variablen strFoldername til "/upload/", dvs. at filerne skal ligge i mappen upload i roden af dit site, men det kan på samme måde også bare ændres efter behag. Du kan kalde denne fil, lige hvad du vil. Nr. 2 er popup'en, som hedder calendarpopup.asp. Og nr. 2 er popup'ens stylesheet, kaldet calenderpopup.css.
1) kalddenligehvadduvil.asp ----------------------------------- <%strDate = date() If Request.Form("calendar") <> "" Then strDate = Request.Form("calendar")%>
If objFSO.FileExists(strFilepath) = true Then Response.Write "<p><img alt=""" & strDate & """ border=""0"" src=""" & strFoldername & strFilename & """></p>" & vbCrLf End If
Set objFS = nothing%> ------------------------------ 2) calendarpopup.asp ------------------------------ <%@ Language=VBScript %> <%Option Explicit%> <%Response.Expires = -1 Session.LCID = 1030%> <% Dim m_dtCurrentDate 'Currently selected date/time Dim m_lDayofFirst 'The day of the week that the first of the current month falls on Dim m_lDaysInMonth 'Number of days in the selected month Dim m_dtBegin 'Beginning date of the selected month Dim m_dtEnd 'Ending date of the selected month
Dim m_lYear 'Currently selected Year Dim m_lMonth 'Currently selected Month Dim m_lDay 'Currently selected Day of the month
Dim m_sInputName 'Name of the input field from the parent page Dim m_dtPassedInDate
Dim i
m_sInputName = Request.QueryString("N")
'Build the date/time from individual parts if there has been a post back. 'Otherwise, just get the current date/time. If Request.QueryString("A") <> "" Then m_lYear = Request.Form("fldYear") m_lMonth = Request.Form("fldMonth") m_lDay = Request.Form("fldDay")
'Fix the day of the month if we switch from a month that has less days in the month 'than the previously selected month and the day selected is not on the newly selected 'month (ie - going from March 31st and then selecting February which does not have a 31st.) m_dtBegin = m_lMonth & "/1/" & m_lYear m_dtEnd = DateAdd("m", 1, m_dtBegin) m_lDaysInMonth = DateDiff("d", m_dtBegin, m_dtEnd) If CLng(m_lDay) > CLng(m_lDaysInMonth) Then m_lDay = m_lDaysInMonth
'Build the Date m_dtCurrentDate = m_lDay & "/" & m_lMonth & "/" & m_lYear
'If the date is not valid after all this then use the current date. If IsDate(m_dtCurrentDate) Then m_dtCurrentDate = CDate(m_dtCurrentDate) Else m_dtCurrentDate = Now() End If
Else m_dtPassedInDate = Request.QueryString("DT") If CStr(m_dtPassedInDate) <> "" Then If IsDate(m_dtPassedInDate) Then m_dtCurrentDate = CDate(m_dtPassedInDate) Else m_dtCurrentDate = Now() End If Else m_dtCurrentDate = Now() End If End If
'Break out certain parts of the currently selected date/time. m_lYear = DatePart("yyyy", m_dtCurrentDate) m_lMonth = DatePart("m", m_dtCurrentDate) m_lDay = DatePart("d", m_dtCurrentDate)
m_dtBegin = CDate(DatePart("m", m_dtCurrentDate) & "/1/" & DatePart("yyyy", m_dtCurrentDate)) m_dtEnd = DateAdd("m", 1, m_dtBegin) m_lDayofFirst = DatePart("w", m_dtBegin) m_lDaysInMonth = DateDiff("d", m_dtBegin, m_dtEnd) %> <HTML> <HEAD> <TITLE>Kalender</TITLE> <LINK rel="stylesheet" type="text/css" href="calendarpopup.css"> </HEAD> <BODY bgcolor="#D4D0C8"> <FORM method=post action="?A=1&N=<%=m_sInputName%>" id=Form1 name=Form1> <table class=overall cellpadding=0 cellspacing=10> <tr> <td> <%DisplayCalendar%> </td> <td valign=top> <table> <tr> <td class="Title"> Måned:<BR> </td> <td class="Title"> År:<BR> </td> </tr> <tr> <td> <SELECT id=fldMonth name=fldMonth onchange="java script:document.Form1.submit();"> <%DisplayMonths%> </SELECT> </td> <td> <SELECT id=fldYear name=fldYear onchange="java script:document.Form1.submit();"> <%For i = Year(Now())-100 To Year(Now()) If i = m_lYear Then Response.Write "<OPTION SELECTED>" Else Response.Write "<OPTION>" End If Response.Write i Response.Write "</OPTION>" & vbCrLf Next%> </SELECT><BR> </td> </tr> </table> <BR><BR><BR><BR> <INPUT type="button" value="OK" id=cmdOK name=cmdOK class=Button onclick="SetDateOnParent();window.opener.calendarform.submit();"> <INPUT type="button" value="Annuller" id=cmdCancel name=cmdCancel class=Button onclick="java script:window.close();"> </td> </tr> </table> </FORM> </BODY> </HTML> <% Sub DisplayMonths Dim arrMonths 'An array of months starting with January Dim i 'counter
For i = 0 To UBound(arrMonths) If CLng(i) = (CLng(m_lMonth) - 1) Then Response.Write "<OPTION value=" & i + 1 & " SELECTED>" & arrMonths(i) & "</OPTION>" Else Response.Write "<OPTION value=" & i + 1 & ">" & arrMonths(i) & "</OPTION>" End If Next End Sub
Sub DisplayCalendar Dim arrDays 'An array of days starting with Sunday Dim i 'counter Dim lColumnCount 'Column Count Dim lNumber 'For building the calendar Dim bFinished 'For building the calendar Dim bStart 'For building the calendar
Response.Write "<table width=100 class='Calendar' cellpadding=4 cellspacing=0><tr class=Header>" For i = 0 to Ubound(arrDays) Response.write "<td>" & arrDays(i) & "</td>" Next
lNumber = 1 bFinished = False bStart = False Do Response.Write "<tr>" For lColumnCount = 1 to 7 If CLng(lColumnCount) = CLng(m_lDayofFirst) Then bStart = True End If
If CLng(m_lDay) = CLng(lNumber) AND CBool(bStart) Then Response.Write "<td class=SelectedDay>" Response.Write "<input name=fldDay type=hidden value=" & lNumber & ">" Else Response.Write "<td class=NormalDay>" End If
If NOT CBool(bFinished) AND CBool(bStart) Then If CLng(m_lDay) <> CLng(lNumber) Then Response.Write "<A href='java script:ChangeDay(" & lNumber & ");'>" End If Response.Write lNumber If CLng(m_lDay) <> CLng(lNumber) Then Response.Write "</A>" End If lNumber = lNumber + 1 If CLng(lNumber) > CLng(m_lDaysInMonth) Then bFinished = True End If Else Response.Write " " End If Response.Write "</td>" Next Response.Write "</tr>" Loop Until CBool(bFinished)
Response.Write "</tr></table>" End Sub %>
<script language="javascript"> function ChangeDay(v_lDay) { document.Form1.fldDay.value = v_lDay; document.Form1.submit(); }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.