Webboard

Pełna wersja: Przycisk Newpoints
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 1.6.8
adres forum: www.haxball-manager.pl
na czym polega problem (screen, opis, komunikaty): Chciałbym dodać obok przycisków szukaj,użytkowniki etc. przycisk Kasa: ?

Jako "?" miała być ilość kasy (pkt z newpoints) podana , którą ma dany zalogowany użytkownik. U niezalogowanego po prostu by pisało Kasa.
Pokaże pewien przykład:

Wylogowany:
http://screenshooter.net/8849497/umqjwvt
Zalogowany:
http://screenshooter.net/8849497/smedsrs
Super.

Musisz napisać plugin a w nim funkcję którą podłącz pod hook global_start.

W funkcji musisz zglobalizowac zmienną np. $cashcount, $mybb oraz $db.

Dzięki zmiennej $db pod którą zdefiniowana jest odpowiednia klasa do obsługi połączenia z bazą danych możesz pobrać ilość newpoints za pomoca metody simple_select. By odpowiednie dane umiescic w zmiennej musisz uzyc metody fetch_field tej samej klasy. Aby dowiedziec sie jakie parametry podac w funkcji simple_select proponuje zajrzec do odpowiedniej dla pluginu newpoints tabeli w bazie danych (na przyklad poprzez phpmyadmin).

Ilość punktow newpoints masz chyba w zmiennej $mybb->user['newpoints'].

Ahh i zapomnialem, na poczatku funkcji warto napisac
Kod PHP:
if (!$mybb->user) { return false; } 
dzięki temu warunkowi dalszy kod nie będzie się wykonywał gdy ktoś jest gościem. W przeciwnym wypadku nalezy zmiennej globalnej nadac wartosc (LICZBA_PUNTKOW).

No i potem juz tylko w szabloniku odpoiwedni link w odpowiednim miejscu i {$zglobalizowana_zmienna_w_celu_wyswietlenia_ilosci_punktow}.
w global.php dodałem:

Kod PHP:
if(!$mybb->user['uid'])
{
$kasa1 'Kasa';


oraz

Kod PHP:
if($mybb->user['uid'])
{
$kasa2 'Kasa: ₤{$newpoints_profile}';


I dodając w szablonie header:

Kod PHP:
{$kasa1}{$kasa2
Nadal nie ma nic. Źle napisałem warunki czy co? Wydawało mi się , że dobrze ;/

Zmieniłem to co wyżej napisałem.

W global.php dodałem:

Kod PHP:
if($mybb->user['uid']){$kasa1='Kasa: {$newpoints_profile}';}
else
{
$kasa1='Kasa';


Wszystko jest fajnie, działa. Tylko {$newpoints_profile} wyświetla zamiast pkt. ;/
Prawidłowy kod na pkt to:

Kod PHP:
{$mybb->user['newpoints']} 

A więc w global.php dodaje:
Kod PHP:
if($mybb->user['uid']){$kasa1='Kasa: {$mybb->user['newpoints']}';}
else
{
$kasa1='Kasa';


Jednakże jest błąd :

Kod:
Parse error: syntax error, unexpected T_STRING in /home/[...]/public_h​tml/global.php on line 524

[...] - wyciąłem kawałek
Spróbuj tak:
Kod PHP:
if($mybb->user['uid'])
{
$kasa1='Kasa: '.$mybb->user['newpoints'];
}
else
{
$kasa1='Kasa';

Dzięki, leci pomógł! :)