14. august 2005 - 11:39Der er
10 kommentarer og 1 løsning
recordcounter kan du hjælpe?
jeg har fået mit script til at vise hvor mange kommentar der er til hver tekst... men selv om der ikke er nogen kommentar til en tekst skriver den (1) frem for(o)når der ikke er skrevet nogen kommentar. hvordan får jeg mit script til at skrive (o)når der ikke er en kommentar?
<!-- #include file="recordcounter.asp" --> <% Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("form.mdb") If Request.QueryString("id") <> "" Then Set rs = Server.CreateObject("ADODB.RecordSet") strSQL = "SELECT * FROM users WHERE (ID = " & Request.QueryString("id") & ")" rs.Open strSQL, myConn, 1, 3 If Not (rs.BOF Or rs.EOF) Then response.write "<table border='0' WIDTH='100%'>" response.write "<td width='400' valign='top' colspan='2'><div id='tabel5'><b>" & rs("overskrift") & "</b></div>" response.write "<FONT FACE='VERDANA' SIZE='1'><FONT COLOR='#473262'>" & rs("dato") & "</FONT><hr COLOR='#DCB7DC' SIZE='1'><p>" & rs("tekst") & "" response.write "<hr COLOR='#DCB7DC' SIZE='1'>" response.write "</FONT>" response.write "</td>" response.write "</tr>" response.write "</table>" response.write "<br>" rs.Update rs.Close myConn.Close Set rs = Nothing Set myConn = Nothing End If End If %> <img src="skrivkommentar.gif" width="18" height="17" border="0"><a href="java script:window.open('kom.asp?id=<%= Request("id") %>','Detaljer','toolbar=0,status=0,scrollbars=yes,resizable=no,width=400,height=400,top=50,left=50').focus();void(0)">Skriv en kommentar</a><% Response.Write "(" & NumberOfRecords("form.mdb", "SELECT * FROM comments WHERE ID=" & ("id") & ";") & "</FONT>)" %> <img src='anbefallink.gif' width='16' height='16' border='0'><script language=JavaScript>var title = "<a href='mailalink.asp?title=" + document.title + "'>Anbefal</a>" document.write (title)</script>
recordcounter.asp: <%
Function NumberOfRecords(DBPathName, TableName) Const adOpenDynamic = 2 Const adLockOptimistic = 3 Dim strConnect Dim objRS Dim intTotal
strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;" strConnect = strConnect & "Data Source=" strConnect = strConnect & Server.MapPath(DBPathName) & ";" strConnect = strConnect & "Persist Security Info=False" Set objRS = Server.CreateObject("ADODB.Recordset") objRS.Open TableName, strConnect, adOpenDynamic, adLockOptimistic intTotal = 0 If (not objRS.BOF) And (not objRS.EOF) Then objRS.MoveFirst While Not objRS.EOF intTotal = intTotal + 1 objRS.MoveNext Wend End If objRS.Close Set objRS = Nothing NumberOfRecords = CLng(intTotal) End Function
Istedet for at lave en (" & NumberOfRecords("form.mdb", "SELECT * FROM comments WHERE ID=" & ("id") & ";") Og så bruge en funktion til at tælle Så prøv en Select Count(*) From comments Where ID = " &("id")
lidt langsom der ;o) Anyway er det både spild af kode ikke at lave sql klare det, samt det er langsommere at tælle sådan frem for Count(*) eller endda Count(id) da den er optimeret til netop at tælle
helt konkret kunne du prøve at skifte følgende kode ---- <% Response.Write "(" & NumberOfRecords("form.mdb", "SELECT * FROM comments WHERE ID=" & ("id") & ";") & "</FONT>)" %> ---- ud med følgende (jeg kan ikke se du definerer id så derfor har jeg requestet den) ---- <% set antal = myConn.Execute("Select Count(*) From comments Where ID = "&request.querystring("id")) response.write antal(0) & "</FONT>" %> ---- Hvis den virker kan du droppe hele din ekstra funktion ;o) Hvis ikke den virker, så er det underligt
Synes godt om
Slettet bruger
14. august 2005 - 12:07#5
jeg får denne fejl: Microsoft VBScript runtime error '800a01a8'
Object required
vis.asp, line 80
line 80: set antal = myConn.Execute("Select Count(*) From comments Where ID = "&request.querystring("id"))
og du har også en Set myConn = Nothing Du kan bare sætte dem ned under --- <% set antal = myConn.Execute("Select Count(*) From comments Where ID = "&request.querystring("id")) response.write antal(0) & "</FONT>" myConn.Close Set myConn = Nothing %>
Synes godt om
Slettet bruger
14. august 2005 - 12:15#8
så virker det busschou... det var dette <% set antal = myConn.Execute("Select Count(*) From comments Where ID = "&request.querystring("id")) response.write antal(0) & "</FONT>" myConn.Close Set myConn = Nothing %> som skulle til, så virkede det :-)
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.