![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 6.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Gdzie znajde takiego hacka do phpbb? Zeby bylo tak jak tutaj na forum Pomógł: liczba i zeby mozna bylo punkty dawac.
Dzieki. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 197 Pomógł: 0 Dołączył: 9.09.2003 Skąd: z Marsa Ostrzeżenie: (0%) ![]() ![]() |
O ile mi sie wydaje to ten HACK zostal stworzony przez:
php.pl Forum Developers Jeśli jestem w błędzie to niech mnie naprowadzą, bo takiego hacka jeszcze nigdzie nie widziałem. Pozdro |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 581 Pomógł: 0 Dołączył: 21.07.2003 Skąd: Jasło Ostrzeżenie: (0%) ![]() ![]() |
Też szukam tego hacka
-------------------- „Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.” Jan Paweł II |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Hacka napsialem ja... ale jako, ze jest on rozzucony po roznych plikach narzie nie bedzie udostepniany.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 6.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Seth to daj tylko co gdzie wkleic...
On jest naprawde dobry. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 581 Pomógł: 0 Dołączył: 21.07.2003 Skąd: Jasło Ostrzeżenie: (0%) ![]() ![]() |
Seth jak postanowisz opublikować ten hack to ja się na to łapie :wink:
-------------------- „Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.” Jan Paweł II |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
OK. Jak chcesz
![]() :arrow: <b>Modyfikacja bazy</b> Tabela <prefix>_users. Dodano:
Tabela <prefix>_users. Dodano:
:arrow: <b>Modyfikacje plikow forum</b> Dokladnych lini Ci nie podam bo unas wprowadzone sa juz pewne zmiany i nie beda sie pokrywac z tymi, ktore Ty masz. <b>viewtopic.php</b>: okolo lini 140 za: Cytat $order_sql = ( empty($post_id) ) ? '' : "GROUP BY p.post_id, t.topic_id, t.topic_title, t.topic_status, t.topic_replies, t.topic_time, t.topic_type, t.topic_vote, t.topic_last_post_id, f.forum_name, f.forum_status, f.forum_id, f.auth_view, f.auth_read, f.auth_post, f.auth_reply, f.auth_edit, f.auth_delete, f.auth_sticky, f.auth_announce, f.auth_pollcreate, f.auth_vote, f.auth_attachments ORDER BY p.post_id ASC"; trzeba zmienic $sql na:
Okolo 316 lini po: Cytat { $can_watch_topic = 0; $is_watching_topic = 0; } } wstaw:
okolo lini 176 po: Cytat $select_post_order .= '</select>'; zmien $sql na:
okolo lini 1269 po: Cytat { $l_edited_by = ''; } wstaw:
okolo lini 1317 dodaj po: Cytat $template->assign_block_vars('postrow', array( wstaw:
<b>Glowny plik CSS:</b> dodaj: Kod td.row4 { background-color: #F0EDDE; } /* RANKING */ <b>viewtopic_body.tpl</b> Musisz wstawic po {postrow.ICQ_IMG} a przed </td>:
po {postrow.POSTER_POSTS}<br /> wstaw:
Nowy plik: <b>lang_special_rank.php</b> Ten plik musi znajdowac sie wkatalogu gdzie masz lang_main.php zawartosc:
<b>lang_main.php</b> na koniec wstaw:
<b>memberlist_body.tpl</b> Po: Cytat <td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.POSTS}</span></td> wstaw:
<b>memberlist.php</b> w lini 65 w tablicy $mode_types_text na koncu dodaj: , $lang['Sort_Top_Helped'] w lini 66 w tablicy $mode_types na koncu dodaj: , 'top_helped' W switchu od lini 119 dodaj:
W lini 150 mien $sql na:
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 581 Pomógł: 0 Dołączył: 21.07.2003 Skąd: Jasło Ostrzeżenie: (0%) ![]() ![]() |
Seth zawsze w gotowości dzięki za to :]
-------------------- „Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.” Jan Paweł II |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 13.05.2004 Skąd: Uć. Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem wszystko na phpbb 2.0.8 (bez zainstalowanych modow) i nie mam pojecia co to dalo oprocz tego ze sie memberlist troszke spapralo (nie ma tam Pomogl) i w info usera postu jest "Pomogl". A jak moge uzyc tego pomogl mi?
![]() |
|
|
![]()
Post
#10
|
|
![]() Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
bo pomogl mi widzi tylko autor tematu wiec jesli zalozysz jakis temat to bedziesz mogl w nim rozdawac punkty ... dotyczy to roznych for wiec na jednych jest aktywny ten mod a na innych nie.
-------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 15.05.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Modzik bardzo fajny, jednak lekko nieskuteczny i dziurawy... Nieskuteczny dlatego, ze wymaga istnienia adresu referowanego forum a nie kazdy firewall lub przegladarka to "obsłuży", dodatkowo nie zawsze przegladamy odpowiedzi w swoim remacie, klikajac bezposrednio na "czysty" link do tematu, czesto robimy to klikajac na nieco inny link, ktory nie jest dokladnie taki sam, wówczas adres referowany bedzie inny. Nie obsluguje tez kilku podstron, na dalszych stronach przycisk sie nie pokazuje, poniewaz wtedy $postrow[0] to jest pierwszy post na danej stronie i inny uzytkownik niz autor miał w zamyśle. A dziurawy dlatego, że pozwala na nieautoryzowane zwiekszanie licznika pomocy. Wystarczy umiescic odpowiedni link w temacie w ktorym jest jakis post uzytkownika ktoremu chcemy zwiekszyc i na niego kliknac. tamin wlasnie dostal ode mnie nieautoryzowany punkt (w pierwszym poscie tego tematu) na probe.
Idę popatrzeć jak to można rozsądnie załatać, bez dodawania skomplikowanego mechanizmu dokładnej autoryzacji i jeśli coś wymyślę to tu napisze. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 15.05.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Ok, coś wymyśliłem, wydaje mi się, że już zabezpiecza przed wszelkimi oszustwami oraz usprawnia znacznie skrypt eliminując sprawdzanie adresu referowanego.
versja 1.1.0 ![]() Changelog - Załatanie dziury pozwalającej na nieautoryzowane zwiększanie liczników przez innych userów. - Wyeliminowanie sprawdzanie adresu referowanego który powodował "nie działanie" oceniania w różnych sytuacjach. - Poprawienie sprawdzania czy użytkownik oglądający temat jest autorem pierwszego postu (niewyświetlanie ikony na kolejnych stronach tematu) otwórz viewtopic.php i znajdź:[php:1:8bc6a2750d]// Rank //////////////////////////////////////////////////// $domena = 'forum.php.pl'; // zmien na odpowiednia wg. Twojego adresu. $pathRef = 'http://'.$domena.'/viewtopic.php?t='.$topic_id; if ( substr( $_SERVER['HTTP_REFERER'], 0, strlen( $pathRef ) ) == $pathRef && $userdata['session_logged_in'] ) { if ( !empty($_GET['p_add']) ) { $p_add = intval($_GET['p_add']); $sql = "SELECT post_marked, poster_id FROM ".POSTS_TABLE." WHERE post_id = $p_add LIMIT 1"; if ( $result = $db->sql_query($sql) ) { $row = $db->sql_fetchrow($result); if ( isset( $row['post_marked'] ) && $row['post_marked'] != 'y' && $row['poster_id'] != $userdata['user_id']) { $sql = "SELECT special_rank FROM ".USERS_TABLE." WHERE user_id = ".$row['poster_id']; if ( $result = $db->sql_query($sql) ) { $row2 = $db->sql_fetchrow($result); $rank = intval($row2['special_rank']); $sql = "UPDATE " . POSTS_TABLE . " SET post_marked = 'y' WHERE post_id=".$p_add; $sql2 = "UPDATE " . USERS_TABLE . " SET special_rank = ".(++$rank)." WHERE user_id=".$row['poster_id']; if ( $db->sql_query($sql) && $db->sql_query($sql2) ) { $template->assign_vars(array( 'META' => '<meta http-equiv="refresh" content="3;url=' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">') ); $message .= sprintf($lang['special_point_added'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>'); $message .= '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>'); message_die(GENERAL_MESSAGE, $message); } } } } } } ///////////////////////////////////////////////////////////////[/php:1:8bc6a2750d]zamień na:[php:1:8bc6a2750d]// Rank //////////////////////////////////////////////////// if ( isset($_GET['p_add']) ) { $p_add = intval($_GET['p_add']); $sql = "SELECT post_marked, poster_id FROM " . POSTS_TABLE . " WHERE post_id = $p_add LIMIT 1"; if ( $result = $db->sql_query($sql) ) { $row = $db->sql_fetchrow($result); if ( $row['post_marked'] != 'y' && $row['poster_id'] != $userdata['user_id']) { $sql = "SELECT special_rank FROM " . USERS_TABLE . " WHERE user_id = " . $row['poster_id']; if ( $result = $db->sql_query($sql) ) { $row2 = $db->sql_fetchrow($result); $rank = ($row2['special_rank']) ? intval($row2['special_rank']) : 0; $sql3 = "SELECT topic_poster FROM " . TOPICS_TABLE . " WHERE topic_id = $topic_id AND topic_poster = " . $userdata['user_id']; if ( !($result3 = $db->sql_query($sql3)) ) { message_die(GENERAL_ERROR, 'Could not query topics table', '', __LINE__, __FILE__, $sql3); } if ( !($row3 = $db->sql_fetchrow($result3)) ) { message_die(GENERAL_ERROR, $lang['Not_Authorised']); } $sql = "UPDATE " . POSTS_TABLE . " SET post_marked = 'y' WHERE post_id = " . $p_add; $sql2 = "UPDATE " . USERS_TABLE . " SET special_rank = " . (++$rank) . " WHERE user_id = " . $row['poster_id']; if ( $db->sql_query($sql) && $db->sql_query($sql2) ) { $template->assign_vars(array( 'META' => '<meta http-equiv="refresh" content="3;url=' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") .'">') ); $message .= sprintf($lang['special_point_added'], '<a href="' .append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">','</a>'); $message .= '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>'); message_die(GENERAL_MESSAGE, $message); } } } } }[/php:1:8bc6a2750d] Znajdź:[php:1:8bc6a2750d]// Rank ///////////////////////////////////////////////////// $helped_me_show = ''; // Wstaw odpowiednie wartosci for na ktorych maja byc oceny $allowForumList = array( 1, 4, 10, 11, 13, 14, 16, 27 ); if ( $postrow[0]['username'] == $userdata['username'] && in_array( $forum_id, $allowForumList ) ) { if ( $poster_rank != $lang['Guest'] && $poster != $postrow[0]['username'] && $postrow[$i]['post_marked'] != 'y' ) { $helped_me_show = '<a href="viewtopic.php?t='.$topic_id.'&p_add='.$postrow[$i]['post_id'].'">Pomógł mi</a>'; } } if ( $postrow[$i]['post_marked'] == 'y' ) { $row_color = 'BDD67A'; $row_class = 'row4'; } else { $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2']; $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2']; } ////////////////////////////////////////////////////////////////////////[/php:1:8bc6a2750d]Zamień na:[php:1:8bc6a2750d] //Rank ///////////////////////////////////////////////////// $helped_me_show = ''; $allowForumList = array(1, 17, 14, 11, 16, 9); if ( in_array($forum_id, $allowForumList) && $userdata['session_logged_in'] && $poster_id != ANONYMOUS && $postrow[$i]['post_marked'] != 'y' && $poster_id != $userdata['user_id']) { $sql3 = "SELECT topic_poster FROM " . TOPICS_TABLE . " WHERE topic_id = $topic_id AND topic_poster = " . $userdata['user_id']; if ( !($result3 = $db->sql_query($sql3)) ) { message_die(GENERAL_ERROR, 'Could not query topics table', '', __LINE__, __FILE__, $sql3); } if ( $row3 = $db->sql_fetchrow($result3) ) { $helped_me_show = '<a href="viewtopic.php?t=' . $topic_id . '&p_add=' . $postrow[$i]['post_id'] . '"><img src="images/hand.gif" border="0" title="Pomógł mi" alt="Pomógł mi"></a> '; } } if ( $postrow[$i]['post_marked'] == 'y' ) { $row_color = 'BDD67A'; $row_class = 'row4'; } else { $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2']; $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2']; }[/php:1:8bc6a2750d]Znajdź:[php:1:8bc6a2750d]'SPECIAL_RANK' => ( $poster_rank != $lang['Guest'] ? $lang['special_rank'].": ".$rank."<br/>" : '' ), ///// Rank[/php:1:8bc6a2750d]Zamień na:[php:1:8bc6a2750d]'SPECIAL_RANK' => ($postrow[$i]['special_rank'] > 0 && in_array($forum_id, $allowForumList) && $poster_id != ANONYMOUS) ? '<b>' . $lang['special_rank'] . ':</b> ' . $postrow[$i]['special_rank'] . '<br/>' : '',[/php:1:8bc6a2750d]Teraz wszedzie tam gdzie userowi pojawi sie ikona to bedzie mógł w tym poście zwiększyć licznik jego autora niezaleznie od innych czynników. Ikona pojawiać się będzie gdy ID forum jest na liście, user przeglądający jest autorem tematu, gdy nie jest to jego post i gdy jeszcze nie kliknął ikony tego postu. |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 6.04.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
A u mnie ten mod nie działa :/.
Instalowałem go 2 razy na 'gołym' phpbb 2.0.8 (localhost) raz bez poprawki, a przed chwilą z poprawką ![]() - pod avatarem każego z użytkowników ciągle widnieje napis pomógł: [pusto] - gdy zaloguję się jako osoba która jest autorem tematu to pod każdą odpowiedzią widnieje link 'pomógł mi' ale kliknięcie na niego powoduje jedynie ponowne wczytanie tematu. - Lista użytkowników się zepsuła... W bazie utworzyłem odpowiednie pola (zgodnie z instrukcją). Co może być powodem? -------------------- pozdrawiam.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 15.05.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj wykonać[sql:1:11bc083bdd]UPDATE phpbb_posts SET post_marked = 'n';
UPDATE phpbb_users SET special_rank = 0;[/sql:1:11bc083bdd] |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 6.04.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Jesteśmy coraz bliżej
![]() Z twojego postu wywnioskowałem że pole post_marked powinno być w tabeli phpbb_posts, a nie jak napisał seth phpbb_users. Po tej zmianie klikając na link pomógł mi pojawia się informacja o dodaniu punktu, ale nic poza tym - punktów jak nie byłao tak nie ma ![]() Wykonałem podane przez Ciebie zapytania i dalej nic... @przemo: a tobie na localu ten mod działa?? EDIT: Sprawdziłem w bazie - gdy dodaję komuś punkty ich wartość zwiększa się - więc coś jest nie tak z wyświetlaniem :/ -------------------- pozdrawiam.
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 15.05.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jasne, że działa, online też działa na http://przemo.org/phpBB2/forum Skopiuj swoj viewtopic.php na viewtopic.txt to zerkne.
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 6.04.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
-------------------- pozdrawiam.
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 15.05.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
No tak, zapomniałem w instrukcji dopisać jeszcze jednej zmiany: Znajdź:
Kod 'SPECIAL_RANK' => ( $poster_rank != $lang['Guest'] ? $lang['special_rank'].": Zamień na:".$rank."<br/>" : '' ), ///// Rank Kod 'SPECIAL_RANK' => ($postrow[$i]['special_rank'] > 0 && in_array($forum_id, $allowForumList) && $poster_id != ANONYMOUS) ? '<b>' . $lang['special_rank'] . ':</b> ' . $postrow[$i]['special_rank'] . '<br/>' : '', (w powyższej instrukcji już to dodałem.)
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 4.12.2003 Skąd: Chełmno Ostrzeżenie: (0%) ![]() ![]() |
Po kliknięciu "Pomógł mi", użytkownikowi nie uaktualnia się liczba ile razy pomógł.
(Pomógł: XXX), wogule nie ma tej linijki. Wydaje mi się, że dodałem złe zapytania do bazy. Powiedzcie jakie dokłądnie zapuytanie mam dodać. Ten post edytował lewy 30.06.2004, 12:55:45 -------------------- Ciekaw jestem, czy papużki nie patrzą na nas z pogardą? BO NIE LATAMY :D
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 7.05.2004 Skąd: Rybnik Ostrzeżenie: (0%) ![]() ![]() |
A mi w memberlist nie wyświetla nic, mam puste pola, może ma ktoś też z tym problem bądz wie jak to naprawić to prosił bym o odpowiedź. Bądz przesłanie mi sowjego pliku memberlist.php
z góry dzieki |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 11:03 |