PDA

Zobacz pełną wersję : Tworzenie własnego modułu



plol123
11-06-2010, 20:47
Korzystam z komponentu alphauserpoints. To taki komponent do przyznawania użytkownikom punktów i na ich podstawie rang. Ściągnąłem komponent który wyświetla liczbę punktów użytkownika ale zauważyłem że nie ma modułu który by wyświetlał rangę użytkownika a konkretnie jej ikone czyli dajmy na to medal.

W profilu konta użytkownika znalazłem fragment kodu który odpowiada za wyświetlanie takowego obrazka ale nie mam pojęcia jak zrobić z tego moduł.


echo '<div class="profile">';

if ( @$this->userrankinfo ) {
if ( $this->userrankinfo->image ) {
$pathimage = JURI::root() . "components/com_alphauserpoints/assets/images/awards/large/";
$userrankimg1 = $pathimage.$this->userrankinfo->image;
$userrankimg = JURI::root(). "components/com_alphauserpoints/assets/phpThumb/phpThumb.php?src=".$userrankimg1."&amp;h=100";
?>
<div style="float:right;padding: 0 0 0 10px;">
<img src="<?php echo $userrankimg ; ?>" alt="" height="100" />
</div>
<?php
}
}

Da się zrobić taki moduł ?

plol123
12-06-2010, 23:06
pomoże ktoś ?? BARDZO PROSZĘ !

moje
13-06-2010, 01:15
Zostaw ten kod, co do własnego modułu, to musisz napisać moduł od podstaw, musi on sczytać dane z bazy danych, z tablicy komponentu.
Informacji szukaj na docs.joomla.org i na api.joomla.org - tam jest wszystko (albo przynajmniej powinno być wszystko ;) ).

plol123
13-06-2010, 09:16
No to będzie problem :/ bo w ogóle nie mam pojęcia od czego zacząć :/

moje
13-06-2010, 11:14
O przejrzenia tabeli komponentu w bazie danych, żeby sprawdzić jakie wartości po brać z bazy danych, a następnie wpisania kodu w module, który będzie sczytywał dane z bazy danych i je wyświetlał.

plol123
13-06-2010, 12:42
OK rozmumiem te wszystkie słowa problem będzie z wykonaniem :]
Znacie jakieś polskie tutoriale co mogłyby pomóc. ?

moje
13-06-2010, 12:58
Wyżyje podałem dwa adresy, zbiorów wiedzy.

plol123
13-06-2010, 13:32
szkoda, że nie po polsku :D

moje
13-06-2010, 13:37
I tu się mylisz, mała podpowiedz, miedzy innymi: wromanek ;)
A języków trzeba się uczyć ;)

plol123
13-06-2010, 13:57
OK dobra już co nieco skumałem ale nie na tyle, żeby coś napisać. Wyciąłem z modułu pokazującego ile mamy punktów kod odpowiadający z pobranie danych z DB


<?php
// no direct access
defined('_JEXEC') or die('Restricted access');
$user =& JFactory::getUser();
$userid = $user->get('id');

$query = "SELECT
points
FROM jos_alpha_userpoints
WHERE
userid = " . $userid ;
$db =& JFactory::getDBO();
$db->setQuery( $query );
$row = $db->loadObject();
echo $row->points;I zamieniłem narazie tylko

echo $row->levelrank;czyli zamiast rzędu z punktami ma czytać poziom rangi. Z tym że w tym rzędzie zamiast nazwy pokazuje się id=tej rangi czyli muszę coś jeszcze napisać żeby id się zamieniało na ikonę czyli wiem że muszę zrobić przeniesienie do innego rekordu bazy i odnieść się do innej kolumny właśnie tej z id pokazywanym na początki tylko jak ??

Mój problem jest taki że nie znam się na php :/

moje
13-06-2010, 14:10
Dla pobranego id rangi, musisz pobrać jej nazwę albo od razu pobrać nazwę.

plol123
13-06-2010, 14:46
Heh a mogłbym prosić o pomoc lub jakiś przykład bo sam tego nie napisze :/

P.S Coś chyba nie tak bo załóżmy że użytkownik ma id rangi 3 to chyba po zalogowaniu tak jak pokazywały się punkty tak teraz powinno pokazać eis to id czyli np 3 a jest puste pole nic się nie wyświetla.

danieladrianka
13-06-2010, 17:24
według kodu podanego wyżej wyszukujesz "points" a do wyświetlenia przypisujesz "levelrank" ?? Chyba zapytanie do bazy masz nie takie choć nie wiem jak tabela ta wygląda. Sprawdź to.

plol123
14-06-2010, 16:15
Nie dawałem sobie rady dałem zlecenie profesjonaliście i za pewną sumkę mam :D