Ogłoszenie

Zwiń
No announcement yet.

numer bota w wiadomości

Zwiń
X
 
  • Filtr
  • Czas
  • Pokaż
Wyczyść wszystko
new posts

  • Majcon
    odpowiedział(a)
    Swojego nie dam ale coś napisze

    Zostaw komentarz:


  • WujcioMattt
    odpowiedział(a)
    Zamieszczone przez playaz44 Zobacz posta
    Kod php:
    public function Sprawdz_bota() {
    global 
    $wyslane_do_bota$Push_Connection;

    $wyraz explode(" "$wyslane_do_bota);

    for(
    $i 0$cnt count($wyraz); $i $cnt$i++) {
    if(
    strlen($wyraz[$i] > and is_numeric($wyraz[$i])) {
    if(
    $Push_Connection -> isBot($wyraz[$i])) {

    //tutaj banujesz usera który napisał, usuwasz ten nr albo co tam chcesz, wysyłasz wiadomość na czat, że ktoś tam reklamował etc

    // jeżeli skrypt ma zatrzymać wysłanie wiadomości to nie zapomnij niżej o return die;
    return die;
    }}}} 
    Gdzieś tam przed wysłaniem wiadomości na czat i najlepiej przed sprawdzeniem czy tekst jest komendą wywołaj sobie tą funkcję

    Pisane z palca, oczywiście można to napisać sprawniej, bo is_numeric to nie rozwiązanie ale większość nie pisze [Siema wbij na nr gg "123456"] albo wbijaj na nr '123456', ja bym to zrobił preg_matchem ale zaraz podniesie się głos ludu, że to za wolna funkcja.

    Poczytaj też o settype i intval jako zamiennik preg_matcha

    ok ok a jesli biorac twoj przyklad napisze wiadomosc Hej wejdziesz na moj czat o nr GG:42742716 ??
    explode masz po spacji a zauwaz ze ja nie mam po GG: spacji !

    Autorze tematu nie podam ci kodu bys myslal ale stworzenie go jest proste wiec by bylo dobrze zrob na zasadzie
    1. usuwania wszystkich znakow z wiadomosci oprocz liczb
    2. laczenie tego co pozostalo wiec liczb (bo po usunieciu bez laczenia mogloby powstac 4 2 7 427 16)
    3. sprawdzenie czy to co pozotalo nie jest botem....

    proste i na temat z tym ze zauwazylem jakies pol roku temu ze wylapuje wszystkie boty procz z sewisu bot4chats czy jakos tak.... dziś nie wiem czy wylapuje takowe bo poprostu nie pojawiaja sie u nas (moze dlatego ze wylapuje ...)

    Zostaw komentarz:


  • playaz44
    odpowiedział(a)
    Po trzy próby z for i foreach przy tym samym stringu:

    Kod:
    for: execution time = 0.66195 sec.
    for: execution time = 0.62879 sec.
    for: execution time = 0.61154 sec.
    
    foreach: execution time = 0.59014 sec.
    foreach: execution time = 0.62066 sec.
    foreach: execution time = 0.64070 sec.
    Także w tym przypadku żadna różnica, string składał się z losowych liter ze spacjami, później losowe litery z cyframi i na końcu pomieszane litery z cyframi i samymi cyframi, łącznie 218 znaków.

    BRT chciał blokadę na "cyfrowe wyrazy", więc podsunąłem swoją propozycję, na jakiś czas to wystarczy, skoro masz "dość lepsze rozwiązanie" to podziel się kodem, z chęcią nie jedna osoba się nim naje

    Zostaw komentarz:


  • Majcon
    odpowiedział(a)
    Lepiej foreach ale to przy długiej wiadomości tak sprawdzać masakra do tego jeszcze jak ktoś napisze gg:nr to ominie
    Dobrze że wpadłem na dość lepsze rozwiązanie

    Zostaw komentarz:


  • playaz44
    odpowiedział(a)
    Kod php:
    public function Sprawdz_bota() {
    global 
    $wyslane_do_bota$Push_Connection;

    $wyraz explode(" "$wyslane_do_bota);

    for(
    $i 0$cnt count($wyraz); $i $cnt$i++) {
    if(
    strlen($wyraz[$i] > and is_numeric($wyraz[$i])) {
    if(
    $Push_Connection -> isBot($wyraz[$i])) {

    //tutaj banujesz usera który napisał, usuwasz ten nr albo co tam chcesz, wysyłasz wiadomość na czat, że ktoś tam reklamował etc

    // jeżeli skrypt ma zatrzymać wysłanie wiadomości to nie zapomnij niżej o return die;
    return die;
    }}}} 
    Gdzieś tam przed wysłaniem wiadomości na czat i najlepiej przed sprawdzeniem czy tekst jest komendą wywołaj sobie tą funkcję

    Pisane z palca, oczywiście można to napisać sprawniej, bo is_numeric to nie rozwiązanie ale większość nie pisze [Siema wbij na nr gg "123456"] albo wbijaj na nr '123456', ja bym to zrobił preg_matchem ale zaraz podniesie się głos ludu, że to za wolna funkcja.

    Poczytaj też o settype i intval jako zamiennik preg_matcha
    Ostatnio edytowany przez playaz44; [ARG:4 UNDEFINED].

    Zostaw komentarz:


  • BRT
    odpowiedział(a)
    Próbowałem nawet bez 'gg' i też wysyła (wpisałem u Siebie: 1 48179200). Jak zrobić przed tym blokadę?

    Zostaw komentarz:


  • BRT
    odpowiedział(a)
    Usunąć z $wiad GG i to powinno pomoc??

    Zostaw komentarz:


  • Wazniak96
    odpowiedział(a)
    Myśl myśl myśl... Slowo kluczowe: "GG:". Ogólnie rzecz biorąc da rade napisać blokadę taką by się nie dało w azden sposób reklamy wkleić ale z racji złożoności tego algorytmu ttzeba się zastanowić czy się opłaca ze względu na czas wykonania

    Zostaw komentarz:


  • BRT
    odpowiedział(a)
    ale np u Baksior'a dałem taką reklamę "Zapraszam na 1super Czat gg:48179200 " i bana z miejsca dostałem za reklamę bota GG:48179200 i nie wiem jak on to zrobił. Pisałem z nim o tym to nie chce napisać.

    Zostaw komentarz:


  • Wazniak96
    odpowiedział(a)
    Obstawiam, że twoja blokada polega na wywaleniu z wiadomości wszystkich znaków oprócz cyfr a następnie sprawdzenie czy powstała liczba jest numerem bota lecz w tym przypadku powstaje nam numer 148179200, który nie jest botem.

    Wiesz czemu tak się dzieje, teraz pokombinuj jak to poprawić.

    Zostaw komentarz:


  • BRT
    odpowiedział(a)
    a jeśli to już mam i dalej wykonuje skrypt?

    Zostaw komentarz:


  • playaz44
    odpowiedział(a)
    die; lub exit; po wykryciu bota

    Zostaw komentarz:


  • BRT
    rozpoczął temat numer bota w wiadomości

    numer bota w wiadomości

    Witam.

    Większość osób ma takie coś że jak ktoś napisze: Zapraszam na 1 super Czat gg:48179200. i informacja że reklamuję a u mnie (napisałem po swojemu) jak tak wpisze to skrypt wykonuje dalej. Nie wiem jak to zrobić żeby blokowało skrypt po numerze bota. Proszę o pomoc i pozdrawiam
Pracuję...
X