Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SMARTY]Przeniesienie podstron na smarty
dawideq03
post 15.02.2013, 11:16:55
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 10.11.2011

Ostrzeżenie: (0%)
-----


Witam,

mam dwie strony, jedna oparta o czysty PHP + MySQL znajduje się pod adresem: http://dawidbtest.home.pl/foreach/index2.php (taki testowy adres), druga, która znajduje się pod adresem http://dawidbtest.home.pl/smarty/ chciałby aby działała na szablonach smarty, problemem jest tu niestety "wyjeżdżanie" tekstu poza cały szablon ( np. na stronie głównej napis "test" znajduje się na samej górze po prawej stronie), wygląda to jakby np. jakiś div nie był domknięty, ale niestety nie znalazłem przyczyny. Może przedstawię nieco kodu:

plik index.php w smarty

  1. <?php
  2. ?>
  3.  
  4. <?php
  5. //pełne ścieżki
  6. // put full path to Smarty.class.php
  7. require('./smarty/Smarty.class.php');
  8. $smarty = new Smarty();
  9. $smarty->setTemplateDir('./templates');
  10. $smarty->setCompileDir('./smarty/templates_c');
  11. $smarty->setCacheDir('./smarty/cache');
  12. $smarty->setConfigDir('./smarty/configs');
  13.  
  14. $menu[0] = array(
  15. 'Strona główna','',);
  16. $menu[1] = array(
  17. 'Aktualności','aktualnosci',);
  18. $menu[2] = array(
  19. 'Galeria','galeria');
  20. $menu[3] = array(
  21. 'Mapa','gmaps',);
  22. $menu[4] = array(
  23. 'Kontakt', 'kontakt');
  24. $menu[5] = array(
  25. 'Księga gości', 'goscie');
  26. $menu[6] = array(
  27. 'Logowanie', 'logowanie');
  28.  
  29. if($_GET['str']=='') include('podstrony/strona_glowna.php');
  30. elseif($_GET['str']=='aktualnosci') include('podstrony/aktualnosci.php');
  31. elseif($_GET['str']=='galeria') include('podstrony/galeria.php');
  32. elseif($_GET['str']=='mapa') include('podstrony/gmaps.php');
  33. elseif($_GET['str']=='kontakt') include('podstrony/contact_form.php');
  34. elseif($_GET['str']=='goscie') include('podstrony/goscie.php');
  35. elseif($_GET['str']=='logowanie') include('podstrony/logowanie.php');
  36. else;
  37.  
  38.  
  39. $smarty->assign("site_title", "Strona domowa");
  40.  
  41. $smarty->assign("str", $_GET["str"]);
  42.  
  43.  
  44. $smarty->assign("menu", $menu);
  45.  
  46.  
  47. $smarty->display('site_head.tpl');
  48.  
  49. $smarty->display('site_header.tpl');
  50.  
  51. //$smarty->display('footer.tpl');
  52.  
  53. ?>



w katalogu /templates, znajduje się plik site_header.tpl , który zawiera strukturę strony"

Kod
<div id="content">
<div id="top">
    Tutaj będzie nagłówek
</div>
  <div id="left">
    {include file="site_menu.tpl"}
</div>
  <div id="page">
    <h1>Witaj na mojej stronie</h1>
    {include file="main_site.tpl"}
    </div>
<div id="right">
    </div>
<div class="clear">
    {include file="footer.tpl"}
    </div>
    </div>
</div>



w site_menu.tpl natomiast pętla foreach, która odpowiada za przeskakiwanie po menu:

Kod
  <ul>
  {foreach item=item from=$menu}
  <li><a href = "index.php?str={$item[1]}">{$item[0]}</a></li>
  {/foreach}
  </ul>



jak zrobić aby napis "test" wyświetlał się pod napisem - "Witaj na mojej stronie"?

dodatkowo mam też zakładki takie jak Aktualności, czy Formularz - to też muszę przerobić na smarty, czy istnieje jakiś prostszy sposób (np. dodanie do /templates np. formularz.tpl i tam przeniesienie kodu a następnie odwołanie się do niego przez np. plik formularz.php? )

Byłbym wdzięczny za każdą pomoc. Wiem że pytania dla niektórych wydają się banalne, ale walczę z tym już jakiś czas i nie daje rady tongue.gif. Dziękuje i pozdrawiam.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.04.2024 - 02:25