Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
- - - - -

Odwiedź Forum via SteamID/IP/Nick


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
48 odpowiedzi w tym temacie

#1 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 23.01.2009 22:05

Odwiedź Forum via SteamID/IP/Nick

Plugin sprawdza czy w bazie danych istnieje steamid/ip/nick gracza. Jeśli go nie ma do jego nicku dodawany jest zdefiniowany tag. Usunięcie go wymaga rejestracji na forum i uzupełnienie pola steamid* w panelu użytkownika.

Wsparcie dla:
phpBB3
phpBB by przemo


Konfiguracja forum:
Dla PHPBB3
Należy stworzyć nowe pole w panelu użytkownika. W administracji szukamy w zakładce Users and Groups

Custom profile fields

tam dodajemy pole o nazwie

steamid

typu "Single Text Field". Dalej uzupełniamy różne opcje pamiętając, by pole Field identification: zostało z wartością "steamid" (bez cudzysłowu).
Dla PHPBB by przemo
Panel Administracji -> Użytkownicy -> Pola w profilu

Dodaj nowe pole koniecznie z nazwą steamid, by plugin mógł je wykryć. Długi opis może być dowolny.

Konfiguracja pluginu:
Trzy stałe odpowiedzialne za MySQL: host (HOST), baza danych(DB) i prefiks tabel(TABLESPREFIX)
//Dane MySQL, użytkownik i hasło wpisz w configs/sql2.txt
#define HOST "127.0.0.1"
#define DB "phpbb_byprzemo"
#define TABLESPREFIX "phpbb_"
//Adres WWW
#define WWW "www....."
Adres Twojego forum
Uzupełniamy zgodnie z prawdą :]

Teraz w folderze konfiguracji amxxa (amxmodx/configs/) tworzymy plik sql2.txt
Wpisujemy do niego nazwę usera bazy danych i jego hasło

db_user
moje_haslo


Tag:
#define PREFIX "[No-Reg]"

Komendy:
forumnicks
pokazuje w okienku listę graczy i ich nicki: w grze i na forum.

Wybór skryptu i metody:
1. Skrypt
//Skrypt
//------------------------------------
#define PHPBB3 0
#define PHPBB_BYPRZEMO 1
//przypisz Skrypt
#define FORUM_SCRIPT PHPBB3
do stałej FORUM_SCRIPT przypisujemy wartość zgodną z oczekiwaniem

#define FORUM_SCRIPT PHPBB3
lub
#define FORUM_SCRIPT PHPBB_BYPRZEMO


Identycznie rozwiązanie zastosowałem dla wyboru metody
//Metoda
//------------------------------------
#define FETCH_BY_STEAMID 0
//Nie polecam po IP
#define FETCH_BY_IP 1 
#define FETCH_BY_NAME 2
//przypisz Metodę
#define FETCH FETCH_BY_STEAMID
do stałej FETCH przypisujemy wartość zgodną z oczekiwaniem (jedną z trzech z listy powyżej)

* dodatkowe pole musi mieć (krótką) nazwę 'steamid' nawet w przypadku pracy z metodą IP

Poprawka 1.31

Załączone pliki


  • +
  • -
  • 1

#2 Radeon

    Profesjonalista

  • Zbanowany

Reputacja: 9
Nowy

  • Postów:166
  • Lokalizacja:US?
Offline

Napisano 28.02.2009 13:43

Przepraszam, że odkopuje, ale:

Mam dane podane takie jak do mysql warcraft, tylko że z innym userem i nazwą bazy danej. Połączenie na 100% działa, ale mimo tego, na serwerze ciągle nikomu nie przydziela [NoReg].

Gdy wpiszę forumnicks wtedy nie pokazuje tylko nicków na forum. Mam dodatkowe pole w profilu ustawione na moim forum Volta-sq.pl

Error z logów

L 02/28/2009 - 13:46:24: [AMXX] Run time error 10 (plugin "odwiedzforumVIAsteamid.amxx") (native "SQL_ReadResult") - debug not enabled!
L 02/28/2009 - 13:46:24: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

#3 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 28.02.2009 13:45

Dane MySQL dotyczą bazy danych, na której opiera się forum.
  • +
  • -
  • 0

#4 Radeon

    Profesjonalista

  • Zbanowany

Reputacja: 9
Nowy

  • Postów:166
  • Lokalizacja:US?
Offline

Napisano 28.02.2009 13:47

I takowe też uzupełniłem. Są takie same na jakich stoi forum. Mimo tego to samo.

W pierwszym moim poście dałem kod błędu

#5 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 28.02.2009 13:49

amxmodx/configs/plugins.ini

odwiedzforumVIAsteamid.amxx debug


  • +
  • -
  • 0

#6 Radeon

    Profesjonalista

  • Zbanowany

Reputacja: 9
Nowy

  • Postów:166
  • Lokalizacja:US?
Offline

Napisano 28.02.2009 14:02

L 02/28/2009 - 14:02:28: [AMXX] Run time error 10: native error (native "SQL_ReadResult")
L 02/28/2009 - 14:02:28: [AMXX] [0] textb90U8Q.sma::checkSteamId (line 41)
L 02/28/2009 - 14:02:28: [AMXX] [1] textb90U8Q.sma::checkPlayer (line 72)
L 02/28/2009 - 14:02:28: [AMXX] [2] textb90U8Q.sma::firstCheck (line 100)
L 02/28/2009 - 14:02:34: [SQLITE] No result set in this query!
L 02/28/2009 - 14:02:34: [AMXX] Displaying debug trace (plugin "odwiedzforumVIAsteamid.amxx")



No i

L 02/28/2009 - 14:05:33: [odwiedzforumVIAsteamid.amxx] no such table: phpbb_profile_fields_data


A moje forum POSIADA tą tabele (sprawdzałem przez PMA)
phpbb_profile_fields_data

#7 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 28.02.2009 15:12

SELECT count(*)
więc wynik zapytania jest zawsze, jeśli tabela istnieje. Wpis z 14:05:33 wyraźnie wskazuje, że w bazie danych nie ma takiej tabeli.

Widać, że połączenie nazwiązało, więc HOST jest ok. Sprawdź nazwę bazy i prefix:
#define DB "phpbb3"
#define TABLESPREFIX "phpbb_"

  • +
  • -
  • 0

#8 Radeon

    Profesjonalista

  • Zbanowany

Reputacja: 9
Nowy

  • Postów:166
  • Lokalizacja:US?
Offline

Napisano 28.02.2009 15:18

#define DB "voltapro_forum"
#define TABLESPREFIX "phpbb_"


Powinno działać ok...

#9 Zelimus

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:16
  • GG:
Offline

Napisano 13.04.2009 07:08

Witam, czy ten pluginek dziala na phpbb by przemo?
  • +
  • -
  • 0

#10 Szogun

    Profesjonalista

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:191
Offline

Napisano 13.04.2009 10:23

Wsparcie dla:

phpBB3


czyli tak. Zależy jaką masz wersję :P
  • +
  • -
  • 0

#11 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 14.04.2009 13:25

wersja 1.3
Dodano obsługę phpbb by przemo
  • +
  • -
  • 0

#12 Wisnia

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:1
Offline

Napisano 14.04.2009 18:15

fajnuy plugin
  • +
  • -
  • 0

#13 Zelimus

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:16
  • GG:
Offline

Napisano 15.04.2009 13:46

wersja 1.3
Dodano obsługę phpbb by przemo

Nie działa + psuje cala baze danych
zapetla jakies pytania query 10 pytan/sec
  • +
  • -
  • 0

#14 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 15.04.2009 14:06

No nie wiem, samo forum podczas wczytywania strony wykonuje kilkanaście|dziesiąt zapytań, więc nie sądzę, by 10 zapytań raz na rundę zniszczyło serwer MySQL :D

Jednokrotne pobranie wszystkich danych jest dość..., nie będę tworzył kopii bazy w pluginie - szkoda zasobów. Racja, że można go trochę zoptymalizować, ale w Twoim wypadku problemem nie jest ilość zapytań tylko połączeń.
  • +
  • -
  • 0

#15 Zelimus

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:16
  • GG:
Offline

Napisano 17.04.2009 14:08

niech ktos sobie sprawdzi
  • +
  • -
  • 0

#16 Henio

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:3
Offline

Napisano 17.04.2009 14:13

fajny...
  • +
  • -
  • 0

#17 MafiaDL

    Naj-Najstarszy Moderator

  • Przyjaciel

Reputacja: 561
Wszechwiedzący

  • Postów:3 492
  • GG:
  • Imię:Łukasz
  • Lokalizacja:Warsaw
Offline

Napisano 18.04.2009 14:28

tylko STEAMID ? ;/
  • +
  • -
  • 0

#18 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 18.04.2009 15:29

No tak, ale łatwo przerobić na IP (na nick w sumie też, ale trochę inaczej).
  • +
  • -
  • 0

#19 MafiaDL

    Naj-Najstarszy Moderator

  • Przyjaciel

Reputacja: 561
Wszechwiedzący

  • Postów:3 492
  • GG:
  • Imię:Łukasz
  • Lokalizacja:Warsaw
Offline

Napisano 18.04.2009 20:28

a powiedziałbyś jak :D
  • +
  • -
  • 0

#20 R3X

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 18.04.2009 20:34

Ze steamID na IP to wystarczy każde get_user_authid() zmienić na get_user_ip(), przy czym pole powinno mieć nazwę 'steamid' mimo wszystko (i tak nie jest pokazywane publicznie, a nic więcej nie trzeba będzie zmieniać). Na nick to trzeba po prostu zrobić inne zapytanie SQL.

Jutro muszę pisać konspekt na maturę, więc gdzieś w poniedziałek powinna wyjść nowa wersja z cvarem do tego, więc nie będziesz musiał zmieniać tego ręcznie (bo zrobię to ja :P). Zoptymalizuję też kod zmniejszając ilość zapytań do serwa na rundę.
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych