26. februar 2002 - 11:06Der er
6 kommentarer og 1 løsning
Presentation av recordsetet
Jag har denna kod, som skall vara en en lista man fyller i om man ska vara borta. men varför skrivs ordet tomt ut samma antal gånger det finns noteringar för veckan... jag vill bara att det ska skrivas ut en gång ifall det inte finnns någon anteckning för just den dagen i den veckan... Hur skall man göra?
Efter ti år i London, Madrid, Paris og Utrecht kommer Sabios AI-fokuserede program af arrangementer om kundeoplevelser, ‘Disrupt’, for første gang til Danmark.
Denne if-sætning går ikke godt. <% if rsfran("dag") = "Måndag" and rsfran("vecka")= vnr then%> Du må ikke gemme dagen som text - du skal gemme dagen som tal. 0 = Søndag, 1 = Måndag, 2 = Tirsdag etc.
Det betyder at du kan lave din SQL-sætning således: SQLstringKfran = "select * from franvaro where vecka ='"&vnr&"' order by dag" ' Dag som sortering
Herefter kan du bruke denne kode: <% for intDag = 0 to 7 ' Udskriv alle 7 dage selvom de er tomme if Not rsfran.EOF and rsfran("dag") = intDag then Do while Not rsfran.EOF and rsfran("dag") = intDag %> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% rsfran.MoveNext loop %> <% Else %> <span class="tdtext">tomt</span><br> <% End If %> <% next %> ' Dag
Jeg har ikke haft mulighed for at test dette - men jeg håber du kan se ideen.
var ska jag definiera dagarna som nummer. i databasen jag använder finns följande fält: ID(autonumber), datum(vilket datum posten lades till), franvaro(notatfält där man gör sin anteckning), vecka(ett veckonummer från en selectlista som visar veckans nummer)och dag(från en selectlista som jag gjort som innehåller dagarnas namn)... om det hjälper så kan klistrar jag in koden som lägger till värde i databasen här under:
----------------------------------------------slut på den snutten------------------------------
-----------------------------------------------här är koden som lägger till i databasen----------------------------- <% Dim MySQL Dim MyTable Dim MyDatabase Dim MyRecordSet Dim MyDataConnection
Herefter vil tallene 0 - 4 findes i databasen i stedet for "Måndag" - "Fredag". Det er fordi tallene kan sorteres.
Samme kode igen: <% for intDag = 0 to 4 ' Udskriv 5 dage selvom de er tomme if Not rsfran.EOF and rsfran("dag") = intDag then Do while Not rsfran.EOF and rsfran("dag") = intDag %> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% rsfran.MoveNext loop %> <% Else %> <span class="tdtext">tomt</span><br> <% End If %> <% next %> ' Dag
Alltså du får ursäkta mig men jag kan inte få ihopa detta... detta är den kod jag har nu...
vnr=request.querystring("vnr") dim Connectionfran,SQLstringKfran,rsfran Set Connectionfran = Server.CreateObject("ADODB.Connection") Connectionfran.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db/franvaro.mdb") SQLstringKfran="select* from franvaro where vecka ='"&vnr&"'" SET rsfran=Connectionfran.Execute(SQLstringKfran) %> <table border="0" width="550"><tr> <td><div align="center"> <table width="550" border="0"><tr> <td width="90"><a href="java script:popUp2('franvaroant.asp')" class="submeny">Lägg till</a></td> <td align="center" valign="top" width=""> <span class="tdgast">Frånvarolista v. <%= vnr %></span></td> <td align="right" width="90"> <FORM NAME="myform" class="select"> <SELECT NAME="dest" SIZE=1 onChange="leapto(this.form)"> <option selected value="intranet.asp?textid=31">Välj här</option> <% For t=0 To 10%> <option value="intranet.asp?textid=31&vnr=<%=vecka+t%>">Vecka <%=vecka+t%></option> <% Next %> </SELECT> </FORM> </td> </tr></table> </div> </td> </tr> <tr> <td><span class="tdsubrub">Måndag</span><br> <% If (rsfran.BOF AND rsfran.EOF) Then%> <span class="tdtext">Inget noterat än..</span> <% Else %> <% rsfran.MoveFirst %> <%Do while Not rsfran.EOF %> <% if rsfran("dag") = "Måndag" and rsfran("vecka")= vnr then%> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% Else %> tomt <% End If %> <% rsfran.MoveNext loop%> <% End If %> </td> </tr> <tr> <td><span class="tdsubrub">Tisdag</span><br> <% If (rsfran.BOF AND rsfran.EOF) Then%> <span class="tdtext">Inget noterat än..</span> <% Else %> <% rsfran.MoveFirst %> <%Do while Not rsfran.EOF %> <% if rsfran("dag") = "Tisdag" and rsfran("vecka")= vnr then%> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% Else %> tomt <% End If %> <% rsfran.MoveNext loop%> <% End If %> </td> </tr> <tr> <td><span class="tdsubrub">Onsdag</span><br> <% If (rsfran.BOF AND rsfran.EOF) Then%> <span class="tdtext">Inget noterat än..</span> <% Else %> <% rsfran.MoveFirst %> <%Do while Not rsfran.EOF %> <% if rsfran("dag") = "Onsdag" and rsfran("vecka")= vnr then%> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% Else %> tomt <% End If %> <% rsfran.MoveNext loop%> <% End If %> </td> </tr> <tr> <td><span class="tdsubrub">Torsdag</span><br> <% If (rsfran.BOF AND rsfran.EOF) Then%> <span class="tdtext">Inget noterat än..</span> <% Else %> <% rsfran.MoveFirst %> <%Do while Not rsfran.EOF %> <% if rsfran("dag") = "Torsdag" and rsfran("vecka")= vnr then%> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% Else %> tomt <% End If %> <% rsfran.MoveNext loop%> <% End If %> </td> </tr> <tr> <td><span class="tdsubrub">Fredag</span><br> <% If (rsfran.BOF AND rsfran.EOF) Then%> <span class="tdtext">Inget noterat än..</span> <% Else %> <% rsfran.MoveFirst %> <%Do while Not rsfran.EOF %> <% if rsfran("dag") = "Fredag" and rsfran("vecka")= vnr then%> <span class="tdtext"><%=rsfran("franvaro") %></span><br> <% Else %> tomt <% End If %> <% rsfran.MoveNext loop%> <% End If %> </td> </tr> </table>
och det enda problemet är att om det finns tre anteckningar för en vecka, exempelvis måndag,tisdag och onsdag så skriver den ut tomt tre gånger på de dagar som inte har någon anteckning och två gånger på de dagfar som har anteckning... men jag vet inte hur jag skall få ihop ditt exempel med min databas och sida... det jag vill ha är att det ska stå:
Måndag Kalle kommer senare Tisdag Ingen notering än Onsdag Kalle slutar tidigare Anders slutar tidigare Torsdag Ingen notering än Fredag Kalle slutar tidigare Anders slutar tidigare
det är mitt mål...
Synes godt om
Ny brugerNybegynder
Din løsning...
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.