Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

ROZWIĄZANY: Wyświetlanie danych z bazy


Rekomendowane odpowiedzi

No więc mam mały problem z wyświetlaniem wyników z bazy danych.

Powinny wyświetlać mi się wszystkie postacie z tabeli ipb_chars, gdzie guid równe jest ID użytkownika

Jednak pokazuje mi:

Plik chars.php:

<?php

class public_gamecp_chars_chars extends ipsCommand

{

public function doExecute( ipsRegistry $registry )

{

if(!$this->memberData['member_id'])

{

$this->registry->output->showError('Nie posiadasz konta dlatego dostęp do funkcji panelu został zablokowany.');

}

$this->DB->query('SELECT * FROM ipb_chars WHERE guid='.intval($this->memberData['member_id']).' ORDER BY uid DESC');

$this->DB->execute();

while( $char = $this->DB->fetch() )

{

$chars['name'] = str_replace("_", " ", $char['name']);

$chars[] = $char;

}

$template = $this->registry->output->getTemplate('gamecp')->chars($chars[0], $chars[1]);

$this->registry->getClass('output')->addContent($template);

$this->registry->output->setTitle('Lista postaci');

$this->registry->output->addNavigation( 'Lista postaci', 'app=gamecp&module=chars' );

$this->registry->getClass('output')->sendOutput();

}

}

?>

Szablon:

<div class="maintitle ipsFilterbar clearfix">

<ul class="ipsList_inline">

<li class="active"><a title="Ustawienia dla Gra" href="/index.php?app=gamecp">Gra</a></li>

<li><a title="Ustawienia ogólne" href="/index.php?app=gamecp&module=newchar">Nowa postać</a></li>

</ul>

</div>

<div class="ipsBox">

<div class="ipsLayout ipsLayout_withleft ipsLayout_smallleft ipsVerticalTabbed clearfix usercp_body">

<div id="usercp_tabs" class="ipsVerticalTabbed_tabs ipsLayout_left">

<ul>

<li class="active"><a href="/index.php?app=gamecp&module=chars">Twoje postacie</a></li>

</ul>

</div>

<div id="usercp_content" class="ipsVerticalTabbed_content ipsLayout_content ipsBox_container">

<div class="ipsPad">

<p class="message">Witaj, <b>{$this->memberData['name']}</b> w kokpicie naszego serwera!<br />Poniżej znajduje się lista wszystkich postaci, które są przypisane do tego konta globalnego.</p>

<br />

<if test="count($chars)">

<h3 class="maintitle">Twoja lista postaci</h3>

<table class="ipb_table report_center" summary="Lista postaci">

<tr class="header">

<th scope="col" style="width:10px">UID</th>

<th scope="col" style="width:70px">Imię Nazwisko</th>

<th class="short" style="width:70px">Sakiewka</th>

<foreach loop="$chars as $char">

<tr class="trow1">

<td>{$chars['uid']}</td>

<td>{$chars['name']}</td>

<td class="short">{$chars['cash']} złota</td>

</tr>

</foreach>

</table>

<else />

<p class="message error">Nie posiadasz na swoim koncie żadnej postaci! Przejdź do zakładki <b>Nowa postać</b>, aby utworzyć nowe konto w świecie gry.</p>

</if>

<br> <br>

</div></div></div></div>

Zrzut z tabeli:

CREATE TABLE IF NOT EXISTS `ipb_chars` (

`uid` int(11) NOT NULL AUTO_INCREMENT,

`guid` int(11) NOT NULL,

`name` varchar(32) NOT NULL,

`cash` int(11) NOT NULL,

PRIMARY KEY (`uid`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

--

-- Zrzut danych tabeli `ipb_chars`

--

INSERT INTO `ipb_chars` (`uid`, `guid`, `name`, `cash`) VALUES

(1, 1, 'GoToDark', 250),

(2, 1, 'Gibbs', 250);

sygnafz.png

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

$chars[] = $char;
}

$template = $this->registry->output->getTemplate('gamecp')->chars($chars[0], $chars[1]);

Daj ostatnią linię na:

$template = $this->registry->output->getTemplate('gamecp')->chars($chars);

Oczywiście o dodaniu zmiennych do bita nie zapominasz?

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Aaa to mowa o tym UID, że się nie wyświetla? :icon_surprised:

Zmień to:

<foreach loop="$chars as $char">
<tr class="trow1">
<td>{$chars['uid']}</td>
<td>{$chars['name']}</td>
<td class="short">{$chars['cash']} złota</td>

</tr>
</foreach>

Na:

<foreach loop="$chars as $char">
<tr class="trow1">
<td>{$char['uid']}</td>
<td>{$char['name']}</td>
<td class="short">{$char['cash']} złota</td>

</tr>
</foreach>

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach


class public_gamecp_chars_chars extends ipsCommand
{
public function doExecute( ipsRegistry $registry )
{

if(!$this->memberData['member_id'])
{
$this->registry->output->showError('Nie posiadasz konta dlatego dostęp do funkcji panelu został zablokowany.');
}

$this->DB->query('SELECT * FROM ipb_chars WHERE guid='.intval($this->memberData['member_id']).' ORDER BY uid DESC');
$this->DB->execute();

while( $char = $this->DB->fetch() )
{
$chars['name'] = str_replace("_", " ", $char['name']);
$chars[] = $char;
}

$template = $this->registry->output->getTemplate('gamecp')->chars($chars);
$this->registry->getClass('output')->addContent($template);
$this->registry->output->setTitle('Lista postaci');
$this->registry->output->addNavigation( 'Lista postaci', 'app=gamecp&module=chars' );
$this->registry->getClass('output')->sendOutput();
}
}

sygnafz.png

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

print_r( $chars );

Daj to nad:

$template = $this->registry->output->getTemplate('gamecp')->chars($chars);

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

To:

while( $char = $this->DB->fetch() )
{
$chars['name'] = str_replace("_", " ", $char['name']);
$chars[] = $char;
}

Zamień na:

while( $char = $this->DB->fetch() )
{
$char['name'] = str_replace("_", " ", $char['name']);
$chars[] = $char;
}

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu.

Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum.

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.