phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

FAQFAQ - PIERWSZA POMOC!!  regulaminREGULAMIN  SzukajSZUKAJ  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload  katalog Forów DyskusyjnychKatalog Forów   FAQ Video tutoriale

Poprzedni temat «» Następny temat
Przesunięty przez: Matteo
09-11-2013, 09:30
Robocik 2.0.1
Autor Wiadomość
koziolek



Pomógł: 675 razy
Posty: 1925
Wysłany: 21-06-2008, 14:46   

tomekxz napisał/a:
Siema. tak se dzisiaj zjechałem na sam początek sb i widze taki błąd
Kod:
Warning: Invalid argument supplied for foreach() in /home/jaco1992/public_html/shoutbox_view.php on line 242


mam zainstalowanego robocika modyfikacji koziołka i nic więcej z sb nie robiłem.
ooo...

w pliku shoutbox_view.php znajdź:
Kod:
                    foreach ( $orig_word as $key => $val )
                    {
                        if ( strstr(strtolower($msg), $val) )
                        {
                            $robot_wulg_message = ( $userdata['user_wulg'] >= ($shoutbox_config['robocik_max_user_wulg'] - 1) ) ? $shoutbox_config['robocik_warning_text_warn'] : $shoutbox_config['robocik_warning_text_wulg'];
                            $robot_wulg_message = str_replace('{$name}', $userdata['username'], $robot_wulg_message);
                           
                            $sql = "UPDATE " . USERS_TABLE . " SET user_wulg = ( `user_wulg` + 1 ) WHERE user_id = '$sb_user_id'";
                            if ( !($result = $db->sql_query($sql)) )
                            {
                                message_die(GENERAL_ERROR, 'Could not update user_wulg', '', __LINE__, __FILE__, $sql);
                            }
                           
                            $sql = "INSERT INTO " . SHOUTBOX_TABLE . "
                                VALUES(NULL, '" . $shoutbox_config['robocik_id'] . "', '$robot_wulg_message', '" . (CR_TIME+2) . "')";
                            if ( !($result = $db->sql_query($sql)) )
                            {
                                message_die(GENERAL_ERROR, 'Could not insert robot message', '', __LINE__, __FILE__, $sql);
                            }
                        }
                    }
i zamień na:
Kod:
                    if( is_array($orig_word) )
                    {
                        foreach ( $orig_word as $key => $val )
                        {
                            if ( strstr(strtolower($msg), $val) )
                            {
                                $robot_wulg_message = ( $userdata['user_wulg'] >= ($shoutbox_config['robocik_max_user_wulg'] - 1) ) ? $shoutbox_config['robocik_warning_text_warn'] : $shoutbox_config['robocik_warning_text_wulg'];
                                $robot_wulg_message = str_replace('{$name}', $userdata['username'], $robot_wulg_message);
                               
                                $sql = "UPDATE " . USERS_TABLE . " SET user_wulg = ( `user_wulg` + 1 ) WHERE user_id = '$sb_user_id'";
                                if ( !($result = $db->sql_query($sql)) )
                                {
                                    message_die(GENERAL_ERROR, 'Could not update user_wulg', '', __LINE__, __FILE__, $sql);
                                }
                               
                                $sql = "INSERT INTO " . SHOUTBOX_TABLE . "
                                    VALUES(NULL, '" . $shoutbox_config['robocik_id'] . "', '$robot_wulg_message', '" . (CR_TIME+2) . "')";
                                if ( !($result = $db->sql_query($sql)) )
                                {
                                    message_die(GENERAL_ERROR, 'Could not insert robot message', '', __LINE__, __FILE__, $sql);
                                }
                            }
                        }
                    }



tomekxz napisał/a:
Przydało by się też zabezpieczenie przed odpisywaniem na własne wiadomości robocika, ustawiłem sobie teksty na słowo "tak" i "nie",
w pliku shoutbox_view.php znajdź:
Kod:
if ( strstr(strtolower($msg), strtolower($user_word)) )
i zamień na:
Kod:
if ( strstr(strtolower($msg), strtolower($user_word)) && $sb_user_id != $shoutbox_config['robocik_id'] )



RuseK napisał/a:
Potem może go nawet zainstaluję, przejrzę kod, zobaczę co spieprzy..., znaczy się, co dodałeś nowego
:mrgreen: :mrgreen: :mrgreen:
_________________
#4 /xg.xrybvmbx.jjj//:cggu
 
     
Gadatliwa Kasia 

   
Radek



Pomógł: 955 razy
Posty: 4614
Wysłany: 22-06-2008, 17:48   

Fajnie że pamiętałeś o moim nicku w instrukcji ( :mrgreen: ) ale usuń adres rawaxa, bo tej strony nie ma od minimum roku :)

Ok, w pliku shoutbox_view.php ten kod:
Kod:
                if ( $row = $db->sql_fetchrow($result) )
                {
                    do
                    {
                        $robocik_randtxt[$row['cat_id']][] = $row['rand_text'];
                    }
                    while ( $row = $db->sql_fetchrow($result) );
                }

zamień na:
Kod:

while ( $row = $db->sql_fetchrow($result) )
{
$robocik_randtxt[$row['cat_id']][] = $row['rand_text'];
}


Kolejny fragment:
Kod:
               
                if ( $row = $db->sql_fetchrow($result) )
                {
                    do
                    {
                        $robocik_words[$row['user_word']] = $row['robot_word'];
                    }
                    while ( $row = $db->sql_fetchrow($result) );
                }

zastąp tym:
Kod:

while ( $row = $db->sql_fetchrow($result) )
{
$robocik_words[$row['user_word']] = $row['robot_word'];
}


I dalej ten kod:
Kod:
                        if ( $row = $db->sql_fetchrow($result) )
                        {
                            do
                            {
                                $orig_word[] = str_replace('\*', '', $row['word']);
                                $word_list[$row['word']] = $row['replacement'];
                            }
                            while ( $row = $db->sql_fetchrow($result) );
                        }

zamień na:
Kod:

while ( $row = $db->sql_fetchrow($result) )
{
$word_list[$row['word']] = $row['replacement']; // I tak zapisywales tylko word_list, orig_word nie uzywales
}

I tak to chyba wszystko, te fragmenty wykonuja sie tylko, jezeli zapytania sie sa w /cache/ ale poprawek wprowadzic nie zaszkodzi :>

Pliku admin_robocik.php nie sprawdzałem jeszcze i raczej nie będę.
Przy okazji poprawiłbym też instalację - przed wykonaniem zapytań ( pierwsze uruchomienie pliku administracyjnego ) dodałbym okienko z polem na wpisanie nicku robota i przy instalacji zapytanie, ktore dodaje usera o wprowadzonym nicku do bazy :>
 
     
jaco1992

Pomógł: 10 razy
Posty: 220
Wysłany: 22-06-2008, 18:08   

Dzięki działa ;)
 
     
Jarek 11


Posty: 119
Wysłany: 24-06-2008, 23:02   

Ja bym proponował dodać coś takiego np.
User pisze:
Kod:
Robocik spadaj stąd

Robicik odpowiada:
Kod:
papa ide sobie i czekam na przeprosiny

I dopóki ten user nie napisze robocik przepraszam to robocik nie będzie reagował na jego komendy.
2.
Coś takiego pisze się:
Kod:
imieniny

Robocik pisze:
Kod:
dziś są imieniny tej i tej osoby

3.
Pisze się:
Kod:
godziny

Robocik odpowiada
Kod:
np. jest godzina 11:30
_________________
Nie umiesz zainstalować jakiegoś moda lub masz problem z forum pisz do mnie na pw lub na gg:960363 to ci pomogę.
 
     
Seraphe


Pomógł: 38 razy
Posty: 606
Wysłany: 25-06-2008, 09:57   

Jarek 11 napisał/a:
a bym proponował dodać coś takiego np.
User pisze:
Kod:
Robocik spadaj stąd

Robicik odpowiada:
Kod:
papa ide sobie i czekam na przeprosiny

I dopóki ten user nie napisze robocik przepraszam to robocik nie będzie reagował na jego
komendy.


A ja bym proponował aby umiał pocieszyć gdy dostaniesz jedynkę w szkole, lub gdy rzuci Cię dziewczyna!

A i żeby telepatycznie wykrywał jaki humor ma dany user.
_________________
"Dostałem warna i teraz obniżone zachowanie będę miał na semestr"
 
     
kamilko

Posty: 78
Wysłany: 28-06-2008, 11:43   

Czy działa on w SB 3.0 Sheryego?
 
     
Jarek 11


Posty: 119
Wysłany: 03-07-2008, 13:33   

Mam problem:
Kod:

[Dzisiaj 14:32] Jarek24:  elo
[Dzisiaj 14:32] Robocik:  siemanko Jarek24 ;)
[Dzisiaj 14:32] Robocik:  siemanko Jarek24 ;)

Czemu odpowiada 2 razy
_________________
Nie umiesz zainstalować jakiegoś moda lub masz problem z forum pisz do mnie na pw lub na gg:960363 to ci pomogę.
 
     
koziolek



Pomógł: 675 razy
Posty: 1925
Wysłany: 03-07-2008, 16:03   

hmmm... tylko na to "elo" tak działa? czy na jakieś inne teksty też?

może masz np. ustawione żeby odpowiadał na: "elo", "el" lub "lo" i dlatego jest 2x
_________________
#4 /xg.xrybvmbx.jjj//:cggu
 
     
Jarek 11


Posty: 119
Wysłany: 03-07-2008, 16:46   

na wszystko odpowiada podwujnie
_________________
Nie umiesz zainstalować jakiegoś moda lub masz problem z forum pisz do mnie na pw lub na gg:960363 to ci pomogę.
 
     
koziolek



Pomógł: 675 razy
Posty: 1925
Wysłany: 03-07-2008, 17:03   

hmmm... dobrze wyedytowałeś pliki?
_________________
#4 /xg.xrybvmbx.jjj//:cggu
 
     
Jarek 11


Posty: 119
Wysłany: 03-07-2008, 17:08   

pliki wrzuciłem te gotowe.

[ Dodano: 03-07-2008, 18:08 ]
Znalazłem proble dwa razy dodałem kod bo jeden plik ręcznie edytowałem.
_________________
Nie umiesz zainstalować jakiegoś moda lub masz problem z forum pisz do mnie na pw lub na gg:960363 to ci pomogę.
 
     
Tavaro

Pomógł: 242 razy
Posty: 1135
Wysłany: 09-07-2008, 21:18   

Mam zainstalowanego Robocika od kilku tygodni i muszę powiedzieć, że jestem zadowolony :D koziolek, jak zwykle dobrze wykonana robota.

Mam tylko jedną propozycję: czy dałoby się wprowadzić jakąś blokadę, by Robocik nie dodawał warnów administratorom? :> Albo przynajmniej głównemu adminowi (ID 2) - bo efektem mojej zabawy z cenzurą słów (sprawdzałem jak skuteczne jest zamienianie po fragmentach wyrazów) było to, że musiałem się odblokowywać przez PhpMyAdmina :lol:
Ostatnio zmieniony przez Tavaro 10-07-2008, 14:12, w całości zmieniany 1 raz  
 
     
chomik

Pomógł: 2 razy
Posty: 104
Wysłany: 10-07-2008, 08:59   

@koziolek
wielkie dzięki za moda
_________________
NIE KARMIE TROLI!!!!!!
 
     
koziolek



Pomógł: 675 razy
Posty: 1925
Wysłany: 10-07-2008, 10:18   

Tavaro, w pliku shoutbox_view.php znajdź:
Kod:
if ( strstr(strtolower($msg), $val) )
i zamień na:
Kod:
if ( strstr(strtolower($msg), $val) && $userdata['user_level'] != ADMIN )


chomik, notioty nać pańńńńńń :mrgreen:
_________________
#4 /xg.xrybvmbx.jjj//:cggu
 
     
Gadatliwa Kasia 

   
Radek



Pomógł: 955 razy
Posty: 4614
Wysłany: 10-07-2008, 17:55   

Aby Robocik był jeszcze lepszy, wymyśliłem system pluginów.
Teraz każdy będzie mógł sprawdzić, że jego Robot będzie wyświetlał czas / datę, mówił, kto ma dziś imieniny, wyświetlał wiadomości albo cytaty z basha (lub kretyna, jak kto woli ;) ).
Pluginy są niczym nie ograniczone, więc każdy będzie mógł napisać swój własny plugin z własnymi fajnymi funkcjami :D
Pluginy instalujemy kopiujac jeden plik i kilkając 'uruchom' w pa.
Wersja rc już dziś! (ew. jutro)
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać załączników na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!

Powered by phpBB modified by Przemo © 2003 phpBB
Strona wygenerowana w 0,13 sekundy. Zapytań do SQL: 13
Polecane serwisy

Najlepsze oprogramowanie do prowadzenia sklepu internetowegoNajlepszy program do sklepu firmowany przez Przem'a

Sklep z gadżetami

mediaclick.pl

serwis laptopów

phpbb

Polisy Ubezpieczeniowe TU Europa

Design Cart - Tworzenie sklepu internetowego

dnirozwoju.pl

Ranking Hostingów HostingOnline.pl

• Zamów reklamę