R ridder Medlem sedan dec. 2006 11 inlägg Frågan 9 dec. 2006 16:45 #1 Hej.
jag får felmeddelande:
Microsoft VBScript runtime error '800a000d'
Type mismatch
/nyclub3/poll.asp, line 29
Vad menas med detta och vad behöver göras?
//mvh
@nders Medlem sedan juni 2000 32 967 inlägg Det betyder att det är något fel som är trasigt.
Om du inte visar koden kan vi inte hjälpa dig mycket mer än så.
R ridder Medlem sedan dec. 2006 11 inlägg Koden ser ut så här:
<%Dim strVotedPoll
Set Check = Conn.Execute("SELECT votedPoll From com_users Where active=1 and userid=" & FixaTecken(Session("user_id")))
strVotedPoll = Check(0)
Check.Close:Set Check=Nothing
If Request.Querystring("action") = "" Then%>
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
<%Set Fraga=Conn.Execute("SELECT pollid,fraga From com_fraga Order by PollId desc limit 1")
If Fraga.EOF Then%>
<tr>
<td colspan="2"><%=strPoll_NoPost%></td>
</tr>
<%Else%>
<tr>
<td colspan="2"><b><%=Fraga(1)%></b></td>
</tr>
<%totalt = Conn.Execute("SELECT sum(klick) From com_svar Where pollID=" & FixaTecken(Fraga(0))).Fields(0)
SQL1 = "SELECT pollID,klick,svar,id From com_svar Where pollID="& FixaTecken(Fraga(0)) & " Order By svarnr"
arrRecSet = GetDbRows(SQL1)
If Not IsArray(arrRecSet) Then%>
<tr>
<td colspan="2"><b><%=strPoll_NoSvar%></b></td>
</tr>
<%Else
For i = 0 To ubound(arrRecSet,2)
stat = arrRecSet(1,i)
If stat <> 0 Then
res = (stat/totalt)* 100
Else
res = "0"
End If
If Int(strVotedPoll) = Int(Fraga(0)) Then%>
<tr>
<td width="82%"><%=arrRecSet(2,i)%> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%Else%>
<tr>
<td width="82%"><a href="default.asp?action=vote&svarID=<%=arrRecSet(3,i)%>&pollId=<%=Fraga(0)%>" class="vit"><%=arrRecSet(2,i)%></a> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%End If
Next%>
<tr>
<td><br><%=strPoll_Rost%>: <%For i=1 to Len(totalt)%><%=Mid(totalt,i,1)%><%Next%></td>
<td align="right"><br><a href="old_poll.asp"><%=strPoll_Aldre%></a></td>
</tr>
<%End If
End If%>
</table>
<%ElseIf Request.Querystring("action") = "vote" Then
If Int(strVotedPoll) = Int(Request.Querystring("pollId")) Then
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
Else
'Conn.Close:Set Conn=Nothing
Response.Redirect "default.asp?action=saveVote&svarID=" & Request.QueryString("svarID") & "&pollId=" & Request.Querystring("pollId")
End If
ELseIf Request.Querystring("action") = "saveVote" Then
Conn.Execute("Update com_svar Set klick=klick+1 Where id=" & FixaTecken(Request.QueryString("svarID")))
Conn.Execute("Update com_users Set votedPoll=" & FixaTecken(Request.Querystring("pollId")) & " Where userid=" & FixaTecken(Session("user_id")))
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
End If%>
@nders Medlem sedan juni 2000 32 967 inlägg Iiih, snälla, lägg koden mellan [kod] och [/ kod] (utan mellanslag), så den går att läsa, och markera vilken rad det blir fel på.
Edit: Antagligen stavas dock felet subtypskonvertering. Använd Clng() eller Cdbl() (beroende på om det är hel- eller decimaltal) på de tal du försöker räkna med. Det är inte bra att försöka dela strängar med varandra.
R ridder Medlem sedan dec. 2006 11 inlägg Sorry.. vet inte om jag fick till det bättre nu heller. Markerade iaf med rött. (rad 19).
<%Dim strVotedPoll
Set Check = Conn.Execute("SELECT votedPoll From com_users Where active=1 and userid=" & FixaTecken(Session("user_id")))
strVotedPoll = Check(0)
Check.Close:Set Check=Nothing
If Request.Querystring("action") = "" Then%>
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
<%Set Fraga=Conn.Execute("SELECT pollid,fraga From com_fraga Order by PollId desc limit 1")
If Fraga.EOF Then%>
<tr>
<td colspan="2"><%=strPoll_NoPost%></td>
</tr>
<%Else%>
<tr>
<td colspan="2"><b><%=Fraga(1)%></b></td>
</tr>
<%totalt = Conn.Execute("SELECT sum(klick) From com_svar Where pollID=" & FixaTecken(Fraga(0))).Fields(0)
[red]SQL1 = "SELECT pollID,klick,svar,id From com_svar Where pollID="& FixaTecken(Fraga(0)) & " Order By svarnr"[/red]
arrRecSet = GetDbRows(SQL1)
If Not IsArray(arrRecSet) Then%>
<tr>
<td colspan="2"><b><%=strPoll_NoSvar%></b></td>
</tr>
<%Else
For i = 0 To ubound(arrRecSet,2)
stat = arrRecSet(1,i)
If stat <> 0 Then
res = (stat/totalt)* 100
Else
res = "0"
End If
If Int(strVotedPoll) = Int(Fraga(0)) Then%>
<tr>
<td width="82%"><%=arrRecSet(2,i)%> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%Else%>
<tr>
<td width="82%"><a href="default.asp?action=vote&svarID=<%=arrRecSet(3,i)%>&pollId=<%=Fraga(0)%>" class="vit"><%=arrRecSet(2,i)%></a> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%End If
Next%>
<tr>
<td><br><%=strPoll_Rost%>: <%For i=1 to Len(totalt)%><%=Mid(totalt,i,1)%><%Next%></td>
<td align="right"><br><a href="old_poll.asp"><%=strPoll_Aldre%></a></td>
</tr>
<%End If
End If%>
</table>
<%ElseIf Request.Querystring("action") = "vote" Then
If Int(strVotedPoll) = Int(Request.Querystring("pollId")) Then
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
Else
'Conn.Close:Set Conn=Nothing
Response.Redirect "default.asp?action=saveVote&svarID=" & Request.QueryString("svarID") & "&pollId=" & Request.Querystring("pollId")
End If
ELseIf Request.Querystring("action") = "saveVote" Then
Conn.Execute("Update com_svar Set klick=klick+1 Where id=" & FixaTecken(Request.QueryString("svarID")))
Conn.Execute("Update com_users Set votedPoll=" & FixaTecken(Request.Querystring("pollId")) & " Where userid=" & FixaTecken(Session("user_id")))
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
End If%>
R ridder Medlem sedan dec. 2006 11 inlägg sorry.. rad 29 va det ju.
<%Dim strVotedPoll
Set Check = Conn.Execute("SELECT votedPoll From com_users Where active=1 and userid=" & FixaTecken(Session("user_id")))
strVotedPoll = Check(0)
Check.Close:Set Check=Nothing
If Request.Querystring("action") = "" Then%>
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
<%Set Fraga=Conn.Execute("SELECT pollid,fraga From com_fraga Order by PollId desc limit 1")
If Fraga.EOF Then%>
<tr>
<td colspan="2"><%=strPoll_NoPost%></td>
</tr>
<%Else%>
<tr>
<td colspan="2"><b><%=Fraga(1)%></b></td>
</tr>
<%totalt = Conn.Execute("SELECT sum(klick) From com_svar Where pollID=" & FixaTecken(Fraga(0))).Fields(0)
SQL1 = "SELECT pollID,klick,svar,id From com_svar Where pollID="& FixaTecken(Fraga(0)) & " Order By svarnr"
arrRecSet = GetDbRows(SQL1)
If Not IsArray(arrRecSet) Then%>
<tr>
<td colspan="2"><b><%=strPoll_NoSvar%></b></td>
</tr>
<%Else
For i = 0 To ubound(arrRecSet,2)
stat = arrRecSet(1,i)
If stat <> 0 Then
[blue] res = (stat/totalt)* 100[/blue]
Else
res = "0"
End If
If Int(strVotedPoll) = Int(Fraga(0)) Then%>
<tr>
<td width="82%"><%=arrRecSet(2,i)%> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%Else%>
<tr>
<td width="82%"><a href="default.asp?action=vote&svarID=<%=arrRecSet(3,i)%>&pollId=<%=Fraga(0)%>" class="vit"><%=arrRecSet(2,i)%></a> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%End If
Next%>
<tr>
<td><br><%=strPoll_Rost%>: <%For i=1 to Len(totalt)%><%=Mid(totalt,i,1)%><%Next%></td>
<td align="right"><br><a href="old_poll.asp"><%=strPoll_Aldre%></a></td>
</tr>
<%End If
End If%>
</table>
<%ElseIf Request.Querystring("action") = "vote" Then
If Int(strVotedPoll) = Int(Request.Querystring("pollId")) Then
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
Else
'Conn.Close:Set Conn=Nothing
Response.Redirect "default.asp?action=saveVote&svarID=" & Request.QueryString("svarID") & "&pollId=" & Request.Querystring("pollId")
End If
ELseIf Request.Querystring("action") = "saveVote" Then
Conn.Execute("Update com_svar Set klick=klick+1 Where id=" & FixaTecken(Request.QueryString("svarID")))
Conn.Execute("Update com_users Set votedPoll=" & FixaTecken(Request.Querystring("pollId")) & " Where userid=" & FixaTecken(Session("user_id")))
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
End If%>
R ridder Medlem sedan dec. 2006 11 inlägg tack för din snabba hjälp.
Är dock inte själv så duktigt på asp så vart skall jag sätta in dessa?
@nders Medlem sedan juni 2000 32 967 inlägg res = (Clng(stat)/Clng(totalt))* 100
R ridder Medlem sedan dec. 2006 11 inlägg Tack ska du ha! fungerar nu!
Härligt med folk som vill hjälpa till.
Mvh
@nders Medlem sedan juni 2000 32 967 inlägg
Härligt med folk som vill hjälpa till.
Yes, det är det vi är här för. :bire
R ridder Medlem sedan dec. 2006 11 inlägg hmm.. du. När jag nu skall kolla "äldre" frågor på omröstningne får jag:
Microsoft VBScript runtime error '800a000d'
Type mismatch
/nyclub3/old_poll.asp, line 56
(Har markerat rad 56.)
<%Dim strVotedPoll
Set Check = Conn.Execute("SELECT votedPoll From com_users Where active=1 and userid=" & FixaTecken(Session("user_id")))
strVotedPoll = Check(0)
Check.Close:Set Check=Nothing
If Request.Querystring("action") = "" Then%>
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
<%Set Fraga=Conn.Execute("SELECT pollid,fraga From com_fraga Order by PollId desc limit 1")
If Fraga.EOF Then%>
<tr>
<td colspan="2"><%=strPoll_NoPost%></td>
</tr>
<%Else%>
<tr>
<td colspan="2"><b><%=Fraga(1)%></b></td>
</tr>
<%totalt = Conn.Execute("SELECT sum(klick) From com_svar Where pollID=" & FixaTecken(Fraga(0))).Fields(0)
SQL1 = "SELECT pollID,klick,svar,id From com_svar Where pollID="& FixaTecken(Fraga(0)) & " Order By svarnr"
arrRecSet = GetDbRows(SQL1)
If Not IsArray(arrRecSet) Then%>
<tr>
<td colspan="2"><b><%=strPoll_NoSvar%></b></td>
</tr>
<%Else
For i = 0 To ubound(arrRecSet,2)
stat = arrRecSet(1,i)
If stat <> 0 Then
res = (Clng(stat)/Clng(totalt))* 100
Else
res = "0"
End If
If Int(strVotedPoll) = Int(Fraga(0)) Then%>
<tr>
<td width="82%"><%=arrRecSet(2,i)%> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%Else%>
<tr>
<td width="82%"><a href="default.asp?action=vote&svarID=<%=arrRecSet(3,i)%>&pollId=<%=Fraga(0)%>" class="vit"><%=arrRecSet(2,i)%></a> (<%=stat%>)</td>
<td rowspan="2" width="18%" valign="bottom" align="right"><%=Round(res,0)%>%</td>
</tr>
<tr>
<td bgcolor="<%=sidBG%>" height="5"><img src="gfx/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td>
</tr>
<%End If
Next%>
<tr>
<td><br><%=strPoll_Rost%>: <%For i=1 to Len(totalt)%><%=Mid(totalt,i,1)%><%Next%></td>
<td align="right"><br><a href="old_poll.asp"><%=strPoll_Aldre%></a></td>
</tr>
<%End If
[red]End If%>[/red]
</table>
<%ElseIf Request.Querystring("action") = "vote" Then
If Int(strVotedPoll) = Int(Request.Querystring("pollId")) Then
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
Else
'Conn.Close:Set Conn=Nothing
Response.Redirect "default.asp?action=saveVote&svarID=" & Request.QueryString("svarID") & "&pollId=" & Request.Querystring("pollId")
End If
ELseIf Request.Querystring("action") = "saveVote" Then
Conn.Execute("Update com_svar Set klick=klick+1 Where id=" & FixaTecken(Request.QueryString("svarID")))
Conn.Execute("Update com_users Set votedPoll=" & FixaTecken(Request.Querystring("pollId")) & " Where userid=" & FixaTecken(Session("user_id")))
'Conn.Close:Set Conn=Nothing
Response.Write "<script language=Javascript>"
Response.Write "self.location.href='default.asp';"
Response.Write "</script>"
End If%>
J.N. Medlem sedan apr. 2003 1 660 inlägg HEJ!
Några lösa trådar att nysta i för att komma vidare:
- får du någon text utskriven på sidan, dvs fungerar vissa röstningar?
- skiljer sig de äldre röstningarna på något sätt mot de nyare?
@nders Medlem sedan juni 2000 32 967 inlägg J.N., detta problem är löst. http://www.webforum.nu/showthread.php?t=151221
Tips till trådskaparen: posta inte samma problem på flera ställen, samt använd funktionen "Acceptera som slutgiltigt svar".
J.N. Medlem sedan apr. 2003 1 660 inlägg
@nders skrev:
J.N., detta problem är löst.http://www.webforum.nu/showthread.php?t=151221
Jepp, såg det när jag fortsatte uppåt i forumet.
@nders skrev:
Tips till trådskaparen: posta inte samma problem på flera ställen, samt använd funktionen "Acceptera som slutgiltigt svar".
Två alldeles utmärkta tips, där det andra tydligen måste upprepas i all oändlighet. :l
@nders skrev:
[B]Clng([/B]uträkning)
TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK! TACK!
:)
Min webbassistent på sidan mådde inge vidare och vägrade svara på frågor. Alltid något som ska krångla som fungerat tidigare. Googlade och googlade, men ditt inlägg löste biffen.