Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Witam,

mam pytanie ma ktoś jakiś gotowy kod, aby tabela

		$table = new \IPS\Helpers\Table\Db( 'x', \IPS\Http\Url::internal( 'app=xxx&module=x&controller=xx' ) );
		/* Columns we need */
		$table->include = array( 'id', 'x', 'x', 'x' );
		$table->mainColumn = 'id';
		$table->langPrefix = 'x_';

		$table->tableTemplate  = array( \IPS\Theme::i()->getTemplate( 'tables', 'core', 'admin' ), 'table' );
		$table->rowsTemplate  = array( \IPS\Theme::i()->getTemplate( 'tables', 'core', 'admin' ), 'rows' );
				
		/* Default sort options */
		$table->sortBy = $table->sortBy ?: 'id';
		$table->sortDirection = $table->sortDirection ?: 'desc';
		$table->noSort	= array( 'x', 'x', 'x );
		
		/* Search */

			
		/* CUSTOM */
		$table->parsers = array(
	
		);
		$table->title = 'XXX';
		/* Display */
	    \IPS\Output::i()->output = \IPS\Theme::i()->getTemplate( 'xxx', 'xxx', 'front' )->xxx( $table );

To jest kod dla tabelki, która wyciąga z obecnej bazy, tam gdzie jest forum, a jak wyciągnąć z innej bazy, nie mam pojęcia jak podłączyć inną bazę pod gotową tabele.

 

Z góry dziękuje

  • Manager
Opublikowano

Jakimś parametrem się nie da, bo dalej w kodzie jest odwołanie do połączenia z bazą forum:

		/* Count results (for pagination) */
		$count = \IPS\Db::i()->select( 'count(*)', $this->table, $where );

Chyba zostaje Ci wyciągnięcie danych z zewnętrznej bazy i zastosowanie "\IPS\Helpers\Table\Custom".

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Opublikowano

@DawPi tak koduje, ale są to podstawy podstaw lekkie aplikacje/wtyczki. A tutaj proszę o wytłumaczenie jak podłączyć bazę zew. i właśnie tą tabelkę, łopatologicznie też może być, nakierowanie

  • Manager
Opublikowano
55 minut temu, inzonek napisał:

A tutaj proszę o wytłumaczenie jak podłączyć bazę zew.

 

14 godzin temu, DawPi napisał:

Chyba zostaje Ci wyciągnięcie danych z zewnętrznej bazy

Dawałem Ci screen.

 

55 minut temu, inzonek napisał:

i właśnie tą tabelkę, łopatologicznie też może być, nakierowanie

 

14 godzin temu, DawPi napisał:

i zastosowanie "\IPS\Helpers\Table\Custom"

Też pisałem. :)

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

  • Manager
Opublikowano

Kumam, ale to już musisz sam pogrzebać w kodzie, czytać opisy funkcji, patrzeć jak w innych miejscach IPS to stosował. Tutaj możemy pomóc z konkretnymi zagadnieniami, ale takiej pracy i szukania rozwiązań powinieneś nauczyć się sam. Na teraz i na przyszłość. :)

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Opublikowano

Naprawdę, nie mam już pomysłu jak to zrobić próbowałem z tym Custom, ale też nic. Stanąłem na etapie podłączenia bazy danych zewnętrznej, mogę sobie sam zrobić taką tabelkę ręcznie ale wolałbym aby to właśnie przez $table było

Opublikowano (edytowane)

@DawPi usunąłem poprzednią wersję.

Nie miałem pojęcia zacząłem robić ręcznie, mam coś takiego i w templacie dodaje {$row['coś']}

		$rows = [];
		foreach((\IPS\Db::i('piik_sss')->select( '*', 'pik', '', '`bid` DESC') ) as $row)
		{
		$rows[] = $row;
		}

A połączenie:

		$connection = \IPS\Db::i( 'pik_sss', array(
			'sql_host'		=> \IPS\Settings::i()->pik_db_host,
			'sql_port'		=> \IPS\Settings::i()->pik_db_port,
			'sql_user'		=> \IPS\Settings::i()->pik_db_user,
			'sql_pass'		=> \IPS\Settings::i()->pik_db_pass,
			'sql_database'		=> \IPS\Settings::i()->pik_db_name,
			'sql_tbl_prefix'	=> 'pik_',
		) );

Tylko, że no nie jest to efekt taki jak chciałem uzyskać, bo to trzeba paginacje i resztę rzeczy dodać a to kupa roboty, a $table ma to już w sobie tylko no nie mam pojęcia jak wstawić, aby tabelka brała dane nie z bazy forum tylko z zewnętrznej ;( 

Edytowane przez inzonek
Opublikowano

@DawPi a zastosowanie \IPS\Helpers\Table\Custom to jak dokładnie zrobić? Tutaj jest kod wyciągnięty z Custom.php

 

	/**
	 * Constructor
	 *
	 * @param	array			$dataSource		Data source
	 * @param	\IPS\Http\Url	$baseUrl		Base URL
	 */
	public function __construct( $dataSource, \IPS\Http\Url $baseUrl )
	{
		$this->dataSource = $dataSource;
		$this->count      = \count( $this->dataSource );
		
		return parent::__construct( $baseUrl );
	}

 

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • 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ę.