Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Atmasyon isimleri tespit etme

Online bir RPG oyunu yazıyorum... Kullanıcıların uyduruk isim vermemeleri için ne gibi bir yol izlemeliyim sizce?

Yani Ghytjrhfsdjfnsdms, Yiiiedawdmnwe, Hhhhhhhhhhejejekk gibi isimler veremesinler.

bilmiyorum belki aynı harfin ikiden fazla tekrar etmesini ebgelleyecek bir yol olabilir, ya da sesli harf zorunlu tutulabilir...
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • unicron adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    1 cevap - 0 soru
    Hmm bence zor bir iş...
    Onun yerine moderatörlere (eminim moderatör gerekecektir) yeni isimlere hızla göz atabileceği kullanışlı bir ekran yapmak daha etkili olur sanırım.

    Dediğin işi yapacak bir regular expression yazmak epey uğraştıracaktır.
  • mattbasta adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    1 cevap - 0 soru
    Metahpone diye bişi var okumuştum ama hiç kullanmayı denemedim:

    http://www.php.net/manual/en/function.metaphone.php

    Bu fonksiyona bir string gönderiyorsun ve nasıl okunduğunu temsil eden bir string döndürüyor. Bir şekilde insan isimlerini kaydedip her birinin de metaphone'unu kaydedip sonra da bu metaphone'a uymasını zorunlu tutabilirsin...
  • 1
    matthew-j-morrison adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    2 cevap - 0 soru
    Google API ile google'da arama yaptır, eğer sonuç geliyorsa alakalı bişeydir, yok hiç sonuç bulamıyorsa alakasız bir kelimedir...
    Denemeye değer :)
    • capt-otis adlı üyenin fotoğrafı capt-otis
      Zekice ama ne kadar güvenilir tartışılır...
      8 yıl önce yazılmış
    • matthew-j-morrison adlı üyenin fotoğrafı matthew-j-morrison
      @capt-otis: aynen
      8 yıl önce yazılmış
  • sparkey0 adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    1 cevap - 0 soru
    Bence @unicron'un yaklaşımını kullan, reddedilen her ismi de veritabanına ysaklı olarak kaydet. Süre geçtikçe moderatörün işi kolaylaşacaktır...
    • unicron adlı üyenin fotoğrafı unicron
      +1
      mantıklı
      8 yıl önce yazılmış
  • wrikken adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    1 cevap - 0 soru
    Sesli/sessizleri limitlemek işini görür mü? Şöyle bir regexp önerebilirim.

    if(preg_match('/[bcdfghjklmnpqrtsvwxyz]{4}|[aeiou]{4}|([a-z])1{2}/i',$name)){ // yasakla }
  • matthew-j-morrison adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    2 cevap - 0 soru
    Kullanıcı adı ile ilgili işleri "büyüklere" bırakmak da bir çözüm olabilir :)

    Mesela facebook, twitter, openId vs.?

    %100 çözüm olur diyemem ama 3kağıtçıların sahte hesap açma işini zorlaştırır en azından bir nebze...
  • jacob adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    1 cevap - 1 soru
  • uls adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    65 cevap - 10 soru
    Ben de matthew-j-morrison'a katılıyorum. Daha mantıklı bir çözüm olacağını da düşünmüyorum (insan gücü kullanmaktan yana olmadığım için), dünyanın en büyük veritabanlarının birinden yararlanacaksın en iyisi. (:
    Düzenli ifade ile olacak iş değil.
    Moderatörler en sağlıklısı olur tabii ama dediğim gibi insan gücü.
  • wdrleo adlı üyenin fotoğrafı
    5 yıl önce yazılmış
    14 cevap - 1 soru
    Bkz: http://www.php.net/manual/en/ref.pspell.php#78609 psPell Fonksiyonu

    Php'de ki bu fonksiyonu kullanarak bir kelimenin sözlükte yani belirtilen dilin sözlüğünde olup olmadığını görebiliyorsunuz.
    Bundan sonra biraz algoritmaya bakıyor. Girilen nicki belli sayılarda parçalarsak mesela bir nickin en az 3 karakter olacağını düşünürsek. 3 karakterden bir döngü başlatarak önce ilk 3 karakterin anlamı var mı pspell ile kontrol ederiz yoksa 4 karaktere bakarız yoksa 5 karaktere ve nickin en uzununu 8 karakter kabul edersek hiçbir anlam bulunamamışsa ilk 5 karakterinde bu sefer kaldığı yerden son 5 karakterini kontrol ederiz yine bir anlamlı bir kelime yoksa ve fonksiyonumuz false döndürmüşse üyeye filtreye takıldığını söyler daha düzgün nickler önerir mesela doğum yerine göre, mailine göre daha düzgün kullanıcı adları önerisi sunarız ve hatayı belirtiriz.

    Ayrıca buna rağmen sisteme bu tarz nicklerle üye olan kişilerin hesaplarının kapatılacağı uyarısını forma koyarsanız kimsenin buna rağmen saçma bir nickle girip oyuna başlayacağını sanmıyorum.

    Unutmadan bu php fonksiyonunu çalıştırabilmek için standart hostinginiz değil, sanal veya dedicated sunucunuz olmak zorunda çünkü; eklenti gerektiriyor. Eklentiyi nasıl kuracağınız ile ilgili bilgileri;
    http://stackoverflow.com/questions/1957808/how-can-i-install-pspell-in-php5-ubuntu
    Bu adresten bulabilirsiniz. Kolay gelsin İyi günler.
  • artifact adlı üyenin fotoğrafı
    2 yıl önce yazılmış
    1 cevap - 0 soru
    Gender api kullanabilirsin

    Apiye ismi gönderiyorsun geriye sana cinsiyet hangi ulkelerde kullanıldığı gibi bir takım yanıt dönüyor

    eğer yanıt unknown dönüyorsa isim uygun değil şeklinde bir hata dönebilirsin ünlü uyumuna göre regex kullanmak bence saçma olur çünkü yabancı isimlerde kullanılabilir

    https://gender-api.com/ siteden araştır