Jump to content
  • 0

Pobranie zmiennej GET w pliku TPL


Habakuk34

Question

Czy orientuje sie ktoś, jak mozna pobrać wartośc zmiennej z adresu URL w pliku TPL.
Dokładnie edytuję edycje produktu w back office, zakladka Funkcje - plik features.tpl

 Mam problem z odczytaniem zmiennej showallfeatures
"&showallfeatures=yes" - jest to zmienna dopisana przeze mnie

https://domena.pl/admin/index.php?controller=AdminProducts&id_product=2148&updateproduct&token=eb427794618e2d22d2b4a9430bb49e0a&showallfeatures=yes

{$smarty.get.id_product} - wyświetla 2148

{$smarty.get.showallfeatures}  - nie wyświetla nic 
 

{$smarty.server.REQUEST_URI} - co dziwne to polecenie daje taki wynik, zupelnie inny niż URL

/admin/index.php?controller=AdminProducts&token=eb427794618e2d22d2b4a9430bb49e0a&id_product=2148&action=Features&updateproduct&ajax=1&rand=1573687130917&_=1573687130333

 

Czy wiecie jak pobrać info o zmiennej showallfeatures ?

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Niestety podobny efekt.
polecenie Tools::getValue('controller') // daje wynik AdminProducts

idąc tokiem rozumowania użyłem

<div>showallfeatures={Tools::getValue('showallfeatures')}</div>

// daje wynik showallfeatures=

Może trzeba w jakiejś klasie php zadeklawoać nową zmienną aby była widoczna w plikach tpl ?

Link to comment
Share on other sites

  • 0
2 minutes ago, Habakuk34 said:

Niestety podobny efekt.
polecenie Tools::getValue('controller') // daje wynik AdminProducts

idąc tokiem rozumowania użyłem


<div>showallfeatures={Tools::getValue('showallfeatures')}</div>

// daje wynik showallfeatures=

Może trzeba w jakiejś klasie php zadeklawoać nową zmienną aby była widoczna w plikach tpl ?

Aa, w kontrolerze zrób pobieranie zmiennej jak wyżej , później assing do szablonu i w szablonie używasz już zmiennej normalnie - możliwe że jest jakis prostszy sposób. 

Poszukam i jutro dam znać

Link to comment
Share on other sites

  • 0

Nie poradzę sobie z edycją AdminProductsController.php, 
Jedyny pomysł jaki mi przychodzi do głowy to zadeklarownie w 
 

public function renderForm(){
.....
	$this->tpl_form_vars['showallfeatures'] = Tools::getValue('showallfeatures'); 
.....
}

ale to oczywiście nie pomogło.
Będę wdzięczny jak bardziej szczegółowo podpowiesz jak to zrobić

"później assing do szablonu" - tutaj nie wiem zupełnie o co chcodzi...

Link to comment
Share on other sites

  • 0

Temat rozwiązany.

Zmienna get nie pobiera sie przez skrypt presty jeśli wpisujemy adres strony z ręki z nową zmienną.
Po zrobieniu odnosnika:

<a href="{$link->getAdminLink('AdminProducts')|escape:'html':'UTF-8'}&showallfeatures=tak&id_product={$smarty.get.id_product}&key_tab=Features&updateproduct" class="btn btn-default">{l s='Pokaż wszystkie cechy'}</a>

{$smarty.get.showallfeatures}  daje wynik "tak"
 

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...