Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Include w pliku .tpl
Forum PHP.pl > Forum > Przedszkole
Budziol
Witam, mam problem :
mianowicie posiadam skrypt mihalism multi host (http://multihost.mihalism.net/)
i ostatnio jeszcze skrypt ad_master (twórca nie chce mi pomóc - mam dopłacić 40 zł żeby mi pomógł)


Chcę dodać do pliku page_footer.tpl
ten kod :
  1. <?php
  2. $admAreaId = 1;
  3. include('./add/show-baners.php');
  4. ?>


w pomocy pisze że dla szablonów smarty coś takiego :
Kod
{php}
  $admAreaId = 1;
  include('./add/show-baners.php');
{/php}


Jednak to również nie działa.
W pliku page_footer.tpl są czasami takie "funkcje"
<# TOTAL_PAGE_VIEWS #> itd.
W pliku index.php skryptu mihalism multi host są definicje do tych "funkcji" np. :
  1. if ($mmhclass->funcs->is_null($mmhclass->input->get_vars['layoutprev']) == false) {
  2. $mmhclass->templ->templ_vars[] = array(
  3. "LIGHTBOX_ID" => $mmhclass->input->get_vars['lb_div'],
  4. "IMAGE_HEIGHT" => (($mmhclass->input->get_vars['layoutprev'] == "std") ? 280 : 454),
  5. "PREVIEW_TYPE" => (($mmhclass->input->get_vars['layoutprev'] == "std") ? "std" : "bx"),
  6. );
  7.  
  8. exit($mmhclass->templ->parse_template("home", "upload_layout_preview_lightbox"));
  9. }


I jak dodać do tego ten kod :
  1. <?php
  2. $admAreaId = 1;
  3. include('./add/show-baners.php');
  4. ?>

aby wyświetlał się w page_footer.tpl questionmark.gif

Dziękuję i pozdrawiam,
Budziol
d3f3nd3r
a czy czasami nie powinieneśtego dodać do pliku .php ?
http://pl.wikibooks.org/wiki/PHP/Smarty
Budziol
Ale to raczej nie jest smarty.

Nie umiem sobie poradzić z dodaniem do php ponieważ tam jest include template.php
i w dodatku każda strona jest podzielona na : page_header.tpl potem np. home.tpl i page_footer.tpl
Treker
Co do adMaster'a wykorzystaj opcje jakie są w tym skrypcie winksmiley.jpg

Po co upierasz się na wersje w php?
Wystarczy, że w tpl dodasz:
  1. <script type="text/javascript" src="show-baners.php?admJS&admAreaId=1"></script>

(Tylko podstaw sobie odpowiednią ścieżkę do pliku show-banners.php)
Budziol
Wiem, ale wolałbym w php.
Przydałoby mi się wiedzieć jak to zrobić bo chciałem też dodać np. kod z Linkme a tam nie ma javascript tylko include php
Pilsener
Każdy system szablonów działa na podobnej zasadzie, musisz:
1. Odebrać zmienną z tego include, czyli po prostu mieć w zmiennej jakiejś_tam kod HTML, który chcesz wyświetlić na stronie:
  1. $zmienna = '<p>test</p>';

2. Dodać tą zmienną do widoku, najczęściej będzie to po prostu przypisanie do tablicy, najczęściej tablica taka ma postać:
  1. $widok['header'] = 'kod html';
  2. $widok['footer'] = 'kod html';
  3. $widok['twoja_zmienna'] = $zmienna; //tu dodajesz swoją
- możesz albo dodać zmienną to tablicy, która potem jest dodawana do szablonu albo użyć odpowiedniej metody (jeśli istnieje) by dodać zmienną do szablonu bezpośrednio
3. Użyć tej zmiennej w szablonie:
  1. <div>
  2. {twoja_zmienna}
  3. </div>


Zapomnij, że dasz gdzieś echo include i wyświetli tam gdzie chcesz, bo stron nie robi się echując je po kawałku, lecz preparując dynamicznie, czyli przygotowujemy najpierw stronę, a potem ją dopiero wysyłamy do przeglądarki.
Budziol
Dziękuję za pomoc.
Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.