1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Sistema de votação

Discussão em 'Web Development' iniciada por FredAsterr, 2 de Outubro de 2008. (Respostas: 26; Visualizações: 2296)

  1. FredAsterr

    FredAsterr Power Member

    Boas

    Alguem sabe de um tutorial para fazer um sistema de votação em que cada ip so pode fazer um voto?

    Cumps
     
  2. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    A eterna questão...

    Não existe nenhuma forma 100% segura de fazer isso.
    Desaconselho vivamente verificares por IP. Porquê, perguntas tu? Porque
    1) das duas pessoas que morem na mesma casa e trabalhem em computadores diferentes, uma vota e a outra lixa-se;
    2) depois de reiniciarem o router, mudaram de IP, a segunda pessoa já pode votar, e se o utilizador seguinte que ficar com aquele IP quiser votar, não conseguirá, e
    3) se eu usar a net da faculdade (entenda-se "quem quer que use um proxy"), ou tenho a sorte de ser o primeiro a ir ao teu site ou não posso votar porque já alguém se antecipou.

    O método ideal é usares cookies para dizer "este utilizador já votou". Mas também é falível, porque basta o utilizador apagar os cookies e já pode votar de novo.

    Decide-te tu :D
     
  3. FredAsterr

    FredAsterr Power Member

    Pois... Tens algum tutorial que mostre como fazer?
     
  4. naoliveira

    naoliveira Power Member

    A única forma de fazer isto é usares um sistema de registo e depois só vota que estiver registado, o problema é que nem toda a gente se vai registar só para votar.
     
  5. Mavors

    Mavors Power Member

    É a maneira mais segura de fazer a coisa.
    Embora a das cookies tb seja porreira. Acho que ninguém se vai dar ao trabalho de andar a apagar as cookies só para fazer um voto. Embora haja malucos para tudo.

    Por IP como já foi dito é demasiado redutor. Eu ficava chateado se na primeira vez que chegasse ao site não pudesse votar só pq o meu IP já tinha sido utilizado.
     
  6. FullDevr

    FullDevr [email protected] Member

    Se tiveres a internet do teu modem partilhada com um switch ou um router, o IP externo é igual para todos
     
  7. FredAsterr

    FredAsterr Power Member

    Ok em ralação ao IP é para esquecer mas agora presisava era de um tutorial que mostras como fazer esse sistema de votaçao se houver em ajax melhor ;)
     
  8. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    O IP é o pior. Impossibilita que qualquer pessoa que use um proxy (como por exemplo, a rede interna de uma universidade ou um proxy público de um ISP) consiga votar se alguém já tiver votado.
    O sistema de registo é igualmente falível se uma pessoa se registar várias vezes para ter vários votos; isto, caso uma pessoa que queira votar realmente se dê ao trabalho de se registar no site.

    Eu aconselho mesmo os cookies. São a única forma de possibilitar vários votos por IP, um voto por computador, e sem registos chatos. É fácil de lhes dar a volta, mas também não se pode pedir muito para esta situação.
    Também se podiam usar sessões para verificação, mas não sei se serão eliminadas com os cookies.
     
  9. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Nem é preciso tanto. Firefox e Opera deixam-te apagar cookies específicos facilmente, e o IE, com a IEDevToolbar, permite-te apagar todos os cookies de um domínio (sem a toolbar, só apagando os cookies todos).
    É como disse, é fácil dar a volta aos cookies, mas não é à toa que se diz que na informática nada é verdadeiramente seguro :P
    São a melhor forma de fazer a votação se não quiserem que os utilizadores se tenham de registar.
     
  10. FredAsterr

    FredAsterr Power Member


    Não é para um concurso ... É para o people poder escolher entre 4 bandas a participarem num concerto...
     
  11. FredAsterr

    FredAsterr Power Member

    Pois como se faz com cookies?
     
  12. FredAsterr

    FredAsterr Power Member

    Pois as votaçoes a serio devem ser com cadastro mas eu nao queria isso...
     
  13. davidprod

    davidprod Power Member

    Estou totalmente em desacordo contigo.
    A melhor opção é o ip, porque é a forma mais segura de evitar votos repetidos, sendo essa a principal falha de um sistema de votação.
    Hoje em dia os sistemas de votação são criados para eleger ou sustentar algo num longo espaço de tempo, stes sistemas são usados principalmente por pessoas com o computador pessoal. Verificando o ip e o dia ou hora de voto é a melhor forma de sustentar a votação para que esta tenha os resultados estáveis e seguros.

    Cumps
     
  14. Mavors

    Mavors Power Member

    Num sistema de votações seguras é feito um Login com verificação de mail. Num sistema superseguro em que se quer votações univocas pede-se mais dados (BI ou NIF) para garantir a univocidade. A pessoa loga-se e faz o seu voto.

    Agora não estamos a falar nesses sistemas (acho eu) e sem ser assim só existem dois métodos: por IP e por Cookies. Por IP se tiveres uma empresa com 100 trabalhadores e um único IP público, apenas um desses trabalhadores vai conseguir votar, se tiveres num ciber-café idem, se tiveres na faculdade idem, e se tiveres um router e vários computadores em casa idem. Além de que se quiseres dar a volta tb dás, se tiveres IP Dinâmico e só fazeres release do router ou do modem.

    Se for por cookies pah, tb podes apagar as cookies e tal. Mas para mim parece-me mais grave castrar a hipotese de voto a quem não o fez do que haver a abertura de uma pessoa votar mais que uma vez. Se essa pessoa quiser votar mais que uma vez seja por IP ou seja por cookies vai consegui-lo, portanto mais vale do que dar uma má imagem a um user que nunca votou, chegar pela primeira vez ao site e não poder fazê-lo.

    Podes é restringir por cookies e fazer ao mesmo tempo com que registos do mesmo IP com um intervalo de 2m não possam votar, de forma a evitares scripting, mas isso já são outros 500.

    Pelo menos esta é a minha opinião.
     
  15. Mavors

    Mavors Power Member

    Sim eu sei que é verdade, mas como é que te sentias se chegasses ao site pela primeira vez e dissesse "Não pode votar mais do que uma vez", quando tu nunca o fizeste? E quem diz tu diz 1500 pessoas, que por o IP ser dinâmico já "podem ter votado". Ou aquelas pessoas que só têm net na empresa e o colega do lado já votou.

    Não sei.. agora é mais uma questão de demage control, se acham que os users que vão votar são users caseiros, pode-se arriscar no IP senão não sei... parece-me dar uma má imagem ao sistema de votações.
     
  16. FredAsterr

    FredAsterr Power Member

    Pois... Vou optar pelos cookies ... Mas agora gostaria que alguem me ajudas a criar um sitema de votaçao ... Cumps
     
  17. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Só para dizer algumas coisas:

    1) para utilizadores caseiros isto aplica-se ainda mais: se alguém que nem percebe muito de informática chega a um site e o site diz-lhe "Já votou", ainda fica a achar que está maluco :D
    2) qualquer uma das formas é falível. No entanto, por cookies (e volto a repetir, não é preciso o CCleaner para os limpar), é um voto por COMPUTADOR - o que, por sua vez, faz com que, num cibercafé, só uma de duas pessoas que tentam votar num computador é que consegue. Em contrapartida, se a segunda pessoa for para outro computador nesse mesmo cibercafé, já consegue votar.
    3) podem sempre ser registados os IPs para "controlo" à posteriori. Se um mesmo IP tiver 100 votos diferentes, faz-se um whois. Se esse IP pertencer a um utilizador caseiro, os votos são todos descartados; se pertencer a uma grande superfície (por exemplo, se o hostname vier de wifi.ist.utl.pt), já faz sentido que existam tantos votos de um mesmo IP.

    Isto também não é uma votação do próximo presidente; é a votação da próxima banda a ir a concurso. É verdade que podem aldrabar, mas acho sinceramente que cookies + IP para controlo é aceitável.

    FredAsterr: em que linguagem? PHP?
     
  18. FredAsterr

    FredAsterr Power Member

    Sim ...php... Se houver com ajax agradecia ;)
     
  19. FredAsterr

    FredAsterr Power Member

    Ninguem tem um exemplo?
     
  20. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

Partilhar esta Página