Ir para conteúdo
Fórum Script Brasil
  • 0

Enquete


Cassius Andrade

Pergunta

Oi Pessoal

veja http://www.abauditores.com.br/enquete.asp

ao votar, ele chama outra página, mas não computa o voto.

imprimi na outra pagina e veio como "ta vazio" e "request = "

o que acontece é que chamo essa página por um java..

a página de votação

<script>
<!--
function vejaresults()
{
    var desktop = window.open('enquete_view.asp', '_blank', 'width=350,height=350,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no')
}

function votarn()
{
    var desktop = window.open('enquete_exe.asp', '_blank', 'width=350,height=350,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no')
}

// -->
</script>
<form method="get" action="java script:votarn()">
Participe de nossas enquetes.</p>
<p><%=sQuestion%></p>
<p>
    <%
    Dim nCount
    Dim nDef
    For nCount=1 To 8 
        If vAnswers(nCount) <> "" Then
        
    %>
<input type="radio" value="<%=nCount%>" <%If nDef = False Then %>checked<%End If%> name="R1"><%=vAnswers(nCount)%><br>
    <%
        nDef = True
        End If
    Next
    %>
  <p>
<input type="submit" value="Votar" name="B1">
  <p><a href="java script:vejaresults()"><img src="images/bt_enquete.jpg" alt="Veja os Resultados da Enquete" width="116" height="22" border="0" /></a><br>

</form>
a de captura
<%
OPTION EXPLICIT
Response.Buffer = True
%>

<!--#include file="enquete_script.asp"-->
<%
'Some before doings...
'Lets get the current poll...
Dim sTitle
Dim sQuestion
Dim vAnswers(8)
Dim vCount(8), sID

sID = Request.QueryString("id")
If sID = "" Then
    sID = -1
End If

Dim sError


'Are we trying to vote?
If Request.Form("R1") <> "" Then
    'First try to vote...
    sError = PollMentor_TryToVote(sID,Request.Form("R1") )
    
    else 
    
    Response.Write("ta vazio")
    
End If

'Get active one...
Dim nRet
nRet = PollMentor_GetPollInfo( sID, sTitle, sQuestion, vAnswers, vCount )
%>


<HTML>
<HEAD>
    <TITLE>Enquete</TITLE>
</HEAD>
<script>
<!--
function vejaantigas()
{
    var desktop = window.open('enquete_antigas.asp', '_blank', 'width=350,height=350,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no')
}
// -->
</script>

<BODY bgcolor="#FFFFFF" LINK="#0000FF" VLINK="#0000FF" ALINK="#0000FF">

<%=sError%>


<form method="POST" action="enquete_exe.asp">

<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=3><TR>
<TD BGCOLOR="#000000" align="center" colspan=2><font face="Arial, Helvetica" size="2" color="#FFFFFF"><b><%=sQuestion%></b></font>
</TD></TR>

<%
Dim nCount, nMaxValue, nLowValue
'First of all get max value and nLowValue
nMaxValue = 0
For nCount=1 To 8 
    If vAnswers(nCount)<>"" And vCount(nCount)>nMaxValue Then
        nMaxValue = vCount(nCount)
    End If
Next    

If nMaxValue = 0 Then    
    nMaxValue = 1
End If

    
Dim nMaxWidth 
nMaxWidth = 200 'This is number of pixels for maxvalue

Dim nThisVal, nTotal, nPercent
nTotal = 0
For nCount=1 To 8 
If vAnswers(nCount)<>"" Then
    nTotal = nTotal + vCount(nCount)
    nThisVal = FormatNumber(vCount(nCount)/nMaxValue * nMaxWidth,0)
%>        

<tr><td><%=vAnswers(nCount)%></td>
<td width="<%=nMaxWidth%>" align="left"><img src="images/bar.gif" width="<%=nThisVal%>" height="10" >
</td></tr>

<%
    End If
Next
%>
</TABLE>
<p>
<%="request = " & Request.Form("R1")%>
Total de votos: <%=nTotal%><br>
<p>
<input type="button" value="Voltar" Onclick="history.back();">
</form>
</BODY>
</HTML>
na enquete_script.asp ta assim...
<%

Function String_GetFullPath( strVirtualPath )
    String_GetFullPath = Server.MapPath( strVirtualPath )
    String_GetFullPath = Replace(String_GetFullPath,"/","\")
End Function

Function PollMentor_GetDatabaseConn()
    Dim oRet
    Dim strDSN
    
    Set strDSN = Server.CreateObject("Adodb.Connection")
    strDSN.Provider = "Microsoft.Jet.OLEDB.4.0"
    strDSN.Open "caminho"


    'strDSN = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& Server.MapPath("dados/bd.mdb")
    
    Set oRet = Server.CreateObject ("ADODB.Connection")
    oRet.Open strDSN    
    Set PollMentor_GetDatabaseConn = oRet
End Function

Function PollMentor_GetTitle()
    PollMentor_GetTitle = "Enquete"    
End Function


Function PollMentor_TryToVote( sID, nNumber )
    Dim sRet, strSQL
    Dim oConn
    
    Set oConn = PollMentor_GetDatabaseConn()
    'Get real id...
    Dim oRS
    If sID = -1 Then
        Set oRS = oConn.Execute("select id from poll where active=true")
        sID = oRS("id").Value
        oRS.Close
        Set oRS= Nothing
    End If
    
    If PollMentor_CanUserVote( oConn, sID ) = False Then
        sRet = "Você já votou nesta enquete. Não é possível votar novamente."
    Else
        strSQL = "update poll set count" & nNumber & " = count" & nNumber & " +1 where "
        If nNumber =-1 Then
            strSQL = strSQL & " active=true"
        Else
            strSQL = strSQL & " id=" & sID
        End If
        oConn.Execute strSQL
        oConn.Execute "insert into votelog(poll_id, ip) values(" & sID & ",'" & Request.ServerVariables( "REMOTE_ADDR" ) & "')"
        sRet = "Obrigado por participar."
    End If
    oConn.Close
    Set oConn = Nothing
    PollMentor_TryToVote=sRet
End Function


Function PollMentor_CanUserVote( oConn, sID ) '
    'Check of user already has voted within 24 hours?
    'If so then no voting can be done...
    ' Here's your chance to display some other content
    '1. Check IP address
    Dim strSQL, sTime, oRS
    sTime = DateAdd( "d", -Request.Form("time"), now() )    
    strSQL = "select id from votelog where poll_id=" & sID & " AND datum < #"&sTime & "# AND ip='" & Request.ServerVariables( "REMOTE_ADDR" ) & "'"
    Set oRS = oConn.Execute(strSQL)    
    If oRS.EOF Then
        PollMentor_CanUserVote = True
    Else
        PollMentor_CanUserVote = False
    End If
    oRS.Close
    Set oRS = Nothing
End Function

Function PollMentor_GetPollInfo ( ByVal nID, ByRef sTitle, ByRef sQuestion, ByRef vAnswers, ByRef vCount )
    Dim sRet, strSQL
    Dim oConn, oRS, nCount
    
    Set oConn = PollMentor_GetDatabaseConn()
    
    strSQL = "select * from poll where " 
    If nID = -1 Then
        strSQL = strSQL & " active=true"
    Else
        strSQL = strSQL & " id=" & nID
    End If
    Set oRS = oConn.Execute(strSQL)
    If oRS.EOF Then
        PollMentor_GetPollInfo = False
    Else
        sTitle=PollMentor_GetTitle()
        sQuestion=oRS("question")
        For nCount=1 To 8
            vAnswers(nCount)=oRS("answer" & CStr(nCount))
            vCount(nCount)=oRS("count" & CStr(nCount))
        Next
        PollMentor_GetPollInfo  = True
    End If
    oRS.Close
    Set oRS = Nothing
    oConn.Close
    Set oConn = Nothing
End Function



%>

alguém por favor... preciso dessa solucao urgente..

obrigado e um abraço a todos !!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...