Merhaba, Aynı kullanıcıların sürekli aynı verileri veri tabanına girmesini "ip" bilgisine göre nasıl engelleyebiliriz. REcaptca bulunması ve onay mekanizmasının olması da işin can sıkıcı olmasını engellemiyor maalesef. Ekleme kodu aşağıda tabi öncesinden öngörülmediği için "ip" çeken bir kod içerikte yok:
genelde email adresinin aynı olup olmadığı kontrol edilir, ama siz illa ip adresiyle kontrol etmek istiyorsanız tablonuzda ekstradan bir ip adresi field'ı oluşturabilirsiniz. bu ip adresi fieldini unique olarak işaretleyin.
ayrıca şuanki kodunuz sql injection'a açık durumda, onu bir şekilde kapatmanızı tavsiye ederim, bunun için en kısa yol; include "baglanti.php"; satırını en üste taşıyıp mysql_real_escape_string fonksiyonunu kullanmanız.
Paylaşımınız için teşekkürler. Dediğiniz gibi ip ye göre çözüm biraz uzun olabilir. hali hazırda e-posta sütünü bulunduğundan böyl bir çözüm ile lgili bir kod parçası paylaşabilir misiniz? Şimdiden teşekkürler.
o zaman; phpmyadmin'den email alanını unique/tekil olarak değiştirirseniz yeterli. eğer "aynı email adresiyle kayıtlı bir üye zaten var" şeklinde bir mesaj göstermek isterseniz;
if (isset ($kayit)){ echo "TEBRİKLER! Kaydınız alındı. "; } else { echo ""; }
kodunuzu bu şekilde değiştirebilirsiniz.
if (isset ($kayit)){ echo "TEBRİKLER! Kaydınız alındı. "; } elseif (mysql_errorno()==1062) { echo "Aynı e-mail adresiyle kayıtlı bir üye zaten var. "; } else { echo ""; }
< Bu mesaj bu kişi tarafından değiştirildi vona70 -- 2 Nisan 2018; 23:17:37 >
Aynı kullanıcıların sürekli aynı verileri veri tabanına girmesini "ip" bilgisine göre nasıl engelleyebiliriz. REcaptca bulunması ve onay mekanizmasının olması da işin can sıkıcı olmasını engellemiyor maalesef. Ekleme kodu aşağıda tabi öncesinden öngörülmediği için "ip" çeken bir kod içerikte yok:
$kategori = $_POST['kategori'];
$ad = $_POST['ad'];
$adres = $_POST['adres'];
$tel = $_POST['tel'];
$eposta = $_POST['eposta'];
if(empty($kategori)){
echo("*Lütfen Tüm Alanları Doldurun");
}elseif(empty($ad)){
echo("<b>ADI YAZMADINIZ. LÜTFEN GERİ DÖNÜP DOLDURUNUZ.</b>");
}elseif(empty($adres)){
echo("<b>ADRESİ YAZMADINIZ. LÜTFEN GERİ DÖNÜP DOLDURUNUZ.</b>");
}elseif(empty($tel)){
echo("<b>TELEFONU YAZMADINIZ. LÜTFEN GERİ DÖNÜP DOLDURUNUZ.</b>");
}elseif(empty($eposta)){
echo("<b>E-POSTANIZI YAZMADINIZ. LÜTFEN GERİ DÖNÜP DOLDURUNUZ.</b>");
}else{
include "baglanti.php";
@$sql = "insert into tablo (kategori, ad, adres, tel, eposta) values ('$kategori', '$ad', '$adres', '$tel', '$eposta')";
@$kayit = mysql_query($sql);
}
if (isset ($kayit)){
echo "TEBRİKLER! Kaydınız alındı. ";
}
else {
echo "";
}
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.