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

Dúvidas Com Votação


Rodrigo - Santos/SP

Pergunta

Estou criando para um site um sistema de votação...

Com pontuação e tal...

O código já está funfando perfeitinho, porém, eu gostaria de restringir a cada usuário para que votasse somente 1 vez!

Para o caso de usar o IP, eu queria saber se dá pra compará-lo juntamente com outro campo...

Por exemplo... Se o cod. do produto for tal e o IP for tal valor, chamar uma tela: Você já votou!

Caso contrário, inserir os valores na tabela...

Será que tem como???

É que num manjo muito de SQL pra saber qual comando usar para comparar antes de inserir dados em uma tabela... (os valores do IP e do Cod. do Produto eu consigo guardar normalmente, só num sei compará-los mesmo)

eeeeeeeee, aproveitando o gancho, queria saber também se tem como anexar a este código, algum comando para também evitar que a pessoa vote novamente através de verificação de Cookies...

Bom, agradeço desde já! rs... pois axo q deu pra perceber que pra comparações de dados eu to completamente por fora!!!

Valeuuuu

[]´s!

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Vamos ver...

Para fazer um 'filtro' na sql, é simples. Note:

"SELECT * FROM tabela"
Aki acima simplesmente selecionanos todos os campos da tabela, sem fazer nenhum filtro de dados.
"SELECT * FROM tabela WHERE campo1="&intVar
Já neste aki fazemos um filtro, selecionando somente aqueles que tiverem o campo1 com valor igual ao da variável intVar.
"SELECT * FROM tabela WHERE campo1="&intVar&" AND campo2='"&strIP&"' "

Aki já fazemos um "duplo" filtro, pois estamos selecionando apenas os registros que tenham o campo1 com valor igual ao da variável intVar e o campo2 com valor igual ao da variável strIP. Você pode perceber que temos como separador das duas condições o AND, para que pegue somente os registros que tenham as duas condicoes satisfeias.

Se quiséssemos que SE apenas uma das duas condicoes estivessem satisfeitas, então ao invés do AND como separados, usaríamos o OR, q significa OU. Então uma das duas sendo True, então traz o resgistros.

Você pode perceber q quanto mais coisa você filtra, menos registros aparecem (Indiretamente proporcional biggrin.gif ).

Vamos falar agora de cookies.

A sintaxe é:

- Para RESGATAR valores:

Request.Cookies("nomeDoCookie")("nomeDaVariávelDesteCookie")

- Para ESCEVER valores:

Request.Cookies("nomeDoCookie")("nomeDaVariávelDesteCookie")

Bem é isso.

Mais sobre cookies? Mais sobre asp? Então baixe este tutorial bem completo, eu gostei muito. Pode baixa-lo neste link: http://download.superasp.mco2.net/tutoriais/asppdf.zip

Link para o comentário
Compartilhar em outros sites

  • 0

ohmy.gif Baixei o Tutorial que você mencionou o link e deu pra ter mais ou menos uma noção... mas na prática não consegui não!

Sobre a comparação das variaveis, aqueles comandos que você mandou eu já havia utilizado em outras sessões do site, mas o q eu gostaria de saber é se na hora de usar o comando INSERT tem como eu verificar se tal campo que estou querendo preencher já contém o mesmo valor para antes de gravar, avisar por exemplo "VOCÊ JÁ VOTOU" através desta comparação.

Tipo, seria na hora de gravar o arquivo que eu precisaria dessa verificação de campos, e não filtrar os campos iguais para serem mostrados... entendeu???

Tem como???

E sobre os cookies, esse tutorial explica e tal mas num aprofunda

muito... (só explica como salvar e como resgatar, mas, mesmo assim tive erro na sintaxe)

Estou usando 3 arquivos:

Votacao.asp

Votacao_send.asp

Votacao_ok.asp

Por exemplo, eu teria que escrever o cookie no Votacao_ok.asp, correto???

e no Votacao_send.asp eu teria que verificar se o cookie é existente...

Pelo menos axo que a lógica seria mais ou menos esta

Tem como alguém dar algum exemplo disso??? usando por exemplo como nome do cookie "Votacao" e campo que precisaria pegar do cookie "cod_prod"

Agradeço ae novamente pela força

Valeuuuu

[]´s

wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

strVar = "[ GuTo ]"
set rs = conexao.execute("select * from tabela where campo='"&strVar&"' ")
if rs.eof then
conexao.Execute("insert into tabela (campo) values('"&strVar&"')")
Response.Write "apelido inserido com sucesso"
else
Response.Write "erro! já existe um apelido igual a esse no bd."
end if
Por exemplo, eu teria que escrever o cookie no Votacao_ok.asp, correto??? e no Votacao_send.asp eu teria que verificar se o cookie é existente...
isso mesmo!
codigoProduto = Int(Request("cod_prod"))
if Request.Cookies("votacao")("cod_prod_"&codigoProduto) = 1 Then
Response.Write "voce já votou neste produto"
else
Response.Write "inserindo os dados..."
'insere os dados
'grava os dados no cookie, ex: Response.Cookies("votacao")("cod_prod"&codigoProduto) = 1
Response.Write "...dados inseridos e cookie gravado!"
end if

Dá uma analisa item por item q você entenderá!

t+

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