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

Problema C/ Envio De Variável


wgalafassijr

Pergunta

olá pessoal...

tenho o arquivo enquete_include.asp c/ o seguinte:

<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 abrejanela(endereco,nome,opcoes) {

window.open(endereco,nome,opcoes);

}

<form name="enque" action="java script: abrejanela('enquete_exe.asp?R1='+enque.R1.value , '_blank' , 'top=100,left=150,width=320,height=320, status=no,resizable=yes,scrollbars=no,toolbar=no');" method="GET">

um rádio pra pegar a resposta

<input type="radio" value="<%=nCount%>" <%If nDef = False Then %>checked<%End If%> name="R1">

o que acontece é q o form não tá passando o valor do R1 pro enquete_exe.asp e o voto não tá sendo processado... alguém saberia me dizer porque isso tá ocorrendo?

grato

wilson

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

coloque antes do nome do do form (enque):

document

fica assim:

<form name="enque" action="java script: abrejanela('enquete_exe.asp?R1='document.enque.R1.value , '_blank' , 'top=100,left=150,width=320,height=320, status=no,resizable=yes,scrollbars=no,toolbar=no');" method="GET">

ve ai se funciona,

:ph34r:

Link para o comentário
Compartilhar em outros sites

  • 0

vou colar aqui o código completo dos arquivos:

enquete_include.asp

<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 abrejanela(endereco,nome,opcoes) {

window.open(endereco,nome,opcoes);

}

// -->

</script>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<form name="enque" action="java script: abrejanela('enquete_exe.asp?R1='+enque.R1.value , '_blank' , 'top=100,left=150,width=320,height=320, status=no,resizable=yes,scrollbars=no,toolbar=no');" method="GET">

<TABLE BORDER=0 WIDTH="158" cellspacing=0 cellpadding=2>

<!--DWLayoutTable-->

<TR>

<TD width="154" height="20" VALIGN="top" bgcolor="#FFFFFF"> <font size="2"><br>

</font> <div align="center"><font color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Participe

da Enquete</strong></font></div></TD>

</TR>

<TR>

<TD height="106" VALIGN="top"> <p align="left"> <font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#000000">

<strong><%=sQuestion%> <br>

<br>

</strong></font>

<%

Dim nCount

Dim nDef

For nCount=1 To 8

If vAnswers(nCount) <> "" Then

%>

<font face="Arial, Helvetica" size="1" color="#000000">

<input type="radio" value="<%=nCount%>" <%If nDef = False Then %>checked<%End If%> name="R1">

<%=vAnswers(nCount)%></font><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><br>

<%

nDef = True

End If

Next

%>

<br>

<input type="submit" value="Votar" name="B1">

</font><br>

<font face="Arial, Helvetica" size="2" color="#000000"><a href="java script:vejaresults()"><font size="1">Resultados</font></a></font></TD>

</TR>

</TABLE>

</form>

enquete_exe.asp

<%

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("R1") <> "" Then

'First try to vote...

sError = PollMentor_TryToVote(sID,Request("R1") )

End If

'Get active one...

Dim nRet

nRet = PollMentor_GetPollInfo( sID, sTitle, sQuestion, vAnswers, vCount )

%>

<HTML>

<HEAD>

<TITLE>Obrigado por participar!</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">

<P>

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

<center>

<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=3>

<TR valign="middle" bgcolor="#FFFFFF">

<TD colspan=2 align="center"><img src="logoenquete.jpg" width="300" height="93"></TD>

</TR>

<TR valign="middle" bgcolor="#FFFFFF">

<TD colspan=2 align="center"><strong><font color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif"><%=sError%></font></strong></TD>

</TR>

<TR valign="middle" bgcolor="#0073AD">

<TD colspan=2 align="center">

<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><strong><font size="2" color="#FFFFFF"><%=sQuestion%></font></strong> </font></div></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><font face="Verdana, Arial, Helvetica, sans-serif"><font face="Arial, Helvetica" size="2" color="#000000"><%=vAnswers(nCount)%></font></td>

<td width="<%=nMaxWidth%>" align="left"><font face="Verdana, Arial, Helvetica, sans-serif"><img src="enquete_adm/bar.gif" width="<%=nThisVal%>" height="10" >

</font></td>

</tr>

<%

End If

Next

%>

</TABLE>

</center>

<center>

<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#000000">

<font size="1">Total de votos: <%=nTotal%></font><br>

<a href="java script:vejaantigas()"><font size="1">Enquetes Anteriores</font></a></font>

<p> <font face="Verdana, Arial, Helvetica, sans-serif">

<input type="button" value="Fechar" Onclick="self.close();">

</font>

</center>

</form>

</BODY>

</HTML>

espero q ajude

grato

wilson

Link para o comentário
Compartilhar em outros sites

  • 0

pra complementar mais ainda: a url do enquete_exe. q asp q abre é a seguinte: http://200.180.192.113/galafassi/enquete_e...sp?R1=undefined

e o erro acusado na página é:

Error Type:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

creio eu q o parametro é o R1 q está indo como undefined!!!

valeu

wilson

Link para o comentário
Compartilhar em outros sites

  • 0

Fala ae cara beleza,

cara já sei porque ta acontecendo isso estou tentando fazer um script aq para resolver esse problema assim q terminar e funcionar posta aq ou mando por icq.

Isso ocorre pois os campos estão com o mesmo nome assim o javascript não consegue reconhecer qual é q está selecionado.

falow T+

Link para o comentário
Compartilhar em outros sites

  • 0

Não tem relação nenhuma entre a janela que abre com a resposta e as instruções da linha do form...

Se tu vai abrir uma nova janela com o javascript tu tem que passar os parametros pela linha da função do javascript e não pela linha do form...

Faça uma variavel que pegue o valor do campo R1 e passe ele no link DENTRO da função:

function vejaresults()

{

R1=enque.R1.value

var desktop = window.open('enquete_view.asp?R1='+R1, '_blank', 'width=350,height=350,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no')

}

Depois pegue o link com o request.querystring("R1") na outra página...

(Dá pra fazer com o submit também... )

Abraços

Lucky

Link para o comentário
Compartilhar em outros sites

  • 0

olha... eu fiz assim....

<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 abrejanela()

{

R1=enque.R1.value

var desktop = window.open('enquete_exe.asp?R1='+R1, '_blank', 'width=350,height=350,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no')

}

// -->

</script>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<form name="enque" action="java script:abrejanela();" method="GET">

<TABLE BORDER=0 WIDTH="158" cellspacing=0 cellpadding=2>

<!--DWLayoutTable-->

<TR>

<TD width="154" height="20" VALIGN="top" bgcolor="#FFFFFF"> <font size="2"><br>

</font> <div align="center"><font color="#FF0000" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Participe

da Enquete</strong></font></div></TD>

</TR>

<TR>

<TD height="106" VALIGN="top"> <p align="left"> <font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#000000">

<strong><%=sQuestion%> <br>

<br>

</strong></font>

<%

Dim nCount

Dim nDef

For nCount=1 To 8

If vAnswers(nCount) <> "" Then

%>

<font face="Arial, Helvetica" size="1" color="#000000">

<input type="radio" value="<%=nCount%>" <%If nDef = False Then %>checked<%End If%> name="R1">

<%=vAnswers(nCount)%></font><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><br>

<%

nDef = True

End If

Next

%>

<br>

<input type="submit" value="Votar" name="B1">

</font><br>

<font face="Arial, Helvetica" size="2" color="#000000"><a href="java script:vejaresults()"><font size="1">Resultados</font></a></font></TD>

</TR>

</TABLE>

</form>

mas não funcionou... e mudei no arquivo enquete_exe.asp pra querystring.... mas o valor passado de R1 continua sendo undefined!!!

valeu

wilson

Link para o comentário
Compartilhar em outros sites

  • 0

Ae Wilson

cara cosegui fazer o código está ae.

Mude o script seu por este.

<script language="JavaScript">

<!--

function Abre(url, width, height)

{

window.open(url,"_blank","resizable=yes,toolbar=no,status=no,menubar=no,scrollbars=yes,width=" + width + ",height=" + height)

}

function Fun_Enviar(formID)

{

    var formularios = document.forms.length;

    for(i=0;i<formularios;i++)

        {

        if(document.forms.name==formID)

        {

        var formulario = i;

        break;

        }

    }

    var num_respostas = document.forms[formulario].opcao.length;

    var resposta = num_respostas;

    var respostas = "";

    for(i=0;i<num_respostas;i++)

        {

        if(document.forms[formulario].opcao.checked)

            {

            resposta = i;

            if(respostas)

            {

                respostas=respostas + "&";

            }

            else

            {

                respostas=respostas + "?";

            }

            respostas=respostas + "opcao=" + document.forms[formulario].opcao.value;

        }

    }

    if(resposta==num_respostas)

    {

    alert("Uma opção deve ser escolhida!");

    }

    else

    {

    Abre("enquete_exe.asp" + respostas,350,320);}

    return false

}

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')

}

// -->

</script>

Mude seu form por este:

<form method="post" name="enquete" onsubmit="return Fun_Enviar('enquete')">

Delculpe a demora

T+ cara

Link para o comentário
Compartilhar em outros sites

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...