folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder Php Ankette Basit Bir Kontrol



Php Ankette Basit Bir Kontrol

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    1234567B
    1234567B's avatar
    Kayıt Tarihi: 04/Şubat/2010
    Erkek

    Arkadaşlar öncelikle hepinize merhaba,

    Ben basit bir anket yaptım veritabına kaydediyorum.Bu ankete sürekli oy kullanabiliyorsunuz.Bunu nasıl engelleyebilirim.Anket radio buttonlardan oluşuyor.Hangi konuyu araştırmalıyım yardımcı olursanız sevinirim.

     


    arbeit macht frei
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek

    Anketi onaylarken CAPTCHA koyun, farklı bir sayfaya yönlendirme yapın ya da formun gönder butonunu js ile kaldırın.

    Örneğin button'un onclick olayına document.getElementByID("gönder tuşunun idsi").remove(); Tabi bu şekilde kaldırırsanız gönder tuşu çalışmayacaktır. Ajax istekleri ile birleştirdiğinizde sorun kalmaz:)

    Anketin ciddiyetine göre üyelik istenebilir ya da e-posta doğrulaması konulabilir.


    Olaylara karışmayın!
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    erc
    erc's avatar
    Kayıt Tarihi: 23/Aralık/2010
    Erkek

    php sessions ?

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    sniperscope
    sniperscope's avatar
    Banlanmış Üye
    Kayıt Tarihi: 14/Mart/2009
    Erkek
    erc bunu yazdı

    php sessions ?

    session ile olmaz.

    ziyaretci tarayici acik iken bir defa oy kullanabilir. Tarayiciyi kapatip yeniden actiginda tekrar oy kullanabilir.

     

    Anket yapacaksan hem ip adresini hemde host adini tutmalisin.

    ip adresini ogrenmek icin:

    $ip = $_SERVER['REMOTE_ADDR'];

    Host adini ogrenmek icin:

    $host = gethostbyaddr($ip);

     

    Anket kullanilirken ise:

    $sql = mysql_query("SELECT ip FROM anket WHERE ip = '" .$ip. "' AND host = '" .$host. "'");

    if(mysql_num_rows($sql) == 0)

    {

        // veritabanina kayit kodlarini buraya koy

    }

    sniperscope tarafından 31/Oca/13 10:09 tarihinde düzenlenmiştir

    "Yer yuzunde hic bir pislik yoktur ki; altindan bir yahudi cikmasin" Adolf Hitler... "Turkiye de hicbir pislik yokturki altindan cemaat cikmasin" SniperScope "Nerede yavşak, hırsız varsa hepsi Allahçı" Fazil Say
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    PHP-SEO Developer
    Erdem
    Erdem's avatar
    Kayıt Tarihi: 04/Haziran/2002
    Erkek

    Oy verenleri txt dosyasına kaydet :)) 

    ordan sorgulayabilirsin o ip varmı yokmu diye.

    Sql e yüklenmemiş olursun direk makina yorulsun. Tabiki biraz benimkisi abartlı ve zor olan tarafı snipescope güzel bir şekilde açıklmamış..

     

    piyasada bir çok anket scripti yada örnekler var onları kontrol ettirebilirsin....

    Aynı zamanda performans için sql yada makinayı kasmak istemiyorsan en temizi cookie ile çlaışmaktır.

    Oy vermek isteyen bir kişinin önce ps de cookie sine baktır değeri 1 ise oy veremesin de uyarı verdirt. Eğer öyle bir cookie yoksa oylamayı yapsın, yaptıkdan sonra o adamın ps ye bir cookie atsın ve değerini 1 yapsın.

     

    Sql e ip olarak eklesen ve adam sürekli tıklayıp saldırı yapmaya çalışşsa her defasında mysq_num_rows çalışacak ve ip kkontrolu yapacak gerek yok bu kadar kasma ya cookie yada text çalış derim.

     

    Ama yok benim ziyaretçi sayım düşük. Zaten kaç kişi tıklar bilmiyorum dersen sql den yap.

    Kolay gelsin.


    Php for SEO nun ardından Php for Gcode (CNC)
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    1234567B
    1234567B's avatar
    Kayıt Tarihi: 04/Şubat/2010
    Erkek

    eyvallah hocam sağolasınız


    arbeit macht frei
Toplam Hit: 1133 Toplam Mesaj: 6