Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [smarty] get, include
krystian1991x
post
Post #1





Grupa: Zarejestrowani
Postów: 114
Pomógł: 0
Dołączył: 7.08.2010

Ostrzeżenie: (10%)
X----


jak mam wstawić zmienną zamiast nazwy pliku ?
  1. {include_php file=zmienna.php}


dodam że tak nie działa
  1. {include_php file="$zmienna.php"}

  1. {include_php file=$zmienna.php}

  1. {include_php file="$zmienna".php}


help !

Ten post edytował krystian1991x 15.10.2010, 12:37:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
rocktech.pl
post
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 131
Dołączył: 8.02.2010

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


No i wyszło szydło z worka. To co się dzieje w pliku news.php jest absolutnie bez sensu!

index.php - tu tworzysz obiekt smarty RAZ w pliku news.php masz do niego dostęp.

  1. <?php
  2. require('libs/Smarty.class.php');
  3. require('cfg.php');
  4.  
  5. $smarty = new Smarty;
  6.  
  7. switch($_GET['id']) {
  8. case 'news':
  9. require('news.php');
  10. break;
  11. }
  12.  
  13. $smarty->assign("site", $_GET['id']);
  14. $smarty->display('index.tpl');
  15.  
  16. ?>


news.php - tu nie potrzebujesz jeszcze raz tworzyć obiektu smarty, ustawiasz zmienne dla szablonu news.tpl
  1. <?php
  2. $result = mysql_query("SELECT id, title, author, text, img, date, commnets FROM news ORDER BY id ASC")
  3. or die("Niepoprawne zapytanie MySQL");
  4.  
  5.  
  6. while ($news = mysql_fetch_array($result))
  7. {
  8. $tablica[] = $news;
  9.  
  10. }
  11.  
  12. $smarty->assign('result',$tablica);
  13.  
  14.  
  15. ?>


w index.tpl includujesz plik tpl a nie plik .php . Smarty ma array result który wypełniłeś danymi w news.php i pliku news.tpl robisz np {foreach} czy {section}
  1. {if $site ==""}
  2. {$site}
  3. zmienna site jest pusta
  4. {include file="news.tpl"}
  5. {/if}
  6. {if $site !=""}
  7. {$site}
  8. zmienna site posiada wartosc
  9. {include file="`$site`.tpl"}
  10. {/if}


Teraz spróbuj przerobić swój kod, może uda ci się przy okazji rozwiązać to bardziej elegancko.


Go to the top of the page
+Quote Post

Posty w temacie
- krystian1991x   [smarty] get, include   14.10.2010, 23:53:20
- - nospor   Mi bez problemu działa ta metoda: {include_php fil...   15.10.2010, 06:03:38
- - krystian1991x   ta zmienna jest przekazywana jako get z pliku tpl ...   15.10.2010, 12:38:40
- - rocktech.pl   Widzę, że nie jesteś uważnym słuchaczem. Moja odpo...   15.10.2010, 12:50:55
- - krystian1991x   Fatal error: Uncaught exception 'Exception...   15.10.2010, 13:19:33
- - rocktech.pl   Wedle tego powinno zadziałać. Coś ci się źle par...   15.10.2010, 13:27:31
- - krystian1991x   to prowadzi mnie do punktu wyjścia a pisałem wyżej...   15.10.2010, 15:06:33
- - rocktech.pl   Pokaż cały kod w obecnej postaci. .php i .tpl. Zer...   15.10.2010, 15:28:12
- - krystian1991x   index.php [PHP] pobierz, plaintext <?phpsession...   15.10.2010, 15:34:40
- - rocktech.pl   Ok pokaż jeszcze co się dzieje w pliku np. news.ph...   15.10.2010, 15:50:53
- - krystian1991x   [PHP] pobierz, plaintext <?php session_start...   15.10.2010, 16:08:35
- - rocktech.pl   No i wyszło szydło z worka. To co się dzieje w pli...   15.10.2010, 16:35:53
- - krystian1991x   zrobiłem tak jak napisałeś ale cóż nie działa   15.10.2010, 16:55:43
- - rocktech.pl   1. Jakie błędy wywala? 2. index.php?id=news - tera...   15.10.2010, 17:07:11
- - krystian1991x   nie wywala błędów a dubluje mi news.php czyli wyśw...   15.10.2010, 17:12:44
- - rocktech.pl   To do wywalenia z index.php zakładając, że kod log...   15.10.2010, 17:13:36
- - krystian1991x   nie login.php jest osobno ładowany i nie jest pod ...   15.10.2010, 17:15:00
- - rocktech.pl   Możesz pokazać kod pliku login.php ?   15.10.2010, 17:24:23
- - krystian1991x   [PHP] pobierz, plaintext <?php session_start...   15.10.2010, 17:26:38
- - rocktech.pl   Nie wiem dlaczego się upierasz żeby całą logikę ap...   15.10.2010, 17:47:00
- - krystian1991x   ale co ma do tego login.php ? skoro nawet jak go n...   15.10.2010, 17:54:04
- - rocktech.pl   Kiedy ci tłumacze, że robisz wszytko źle i cała ob...   15.10.2010, 18:58:23
- - krystian1991x   Powiedz że nie wiesz co jest źle a nie gadaj od rz...   15.10.2010, 19:00:50
- - rocktech.pl   Ja wiem co jest źle tylko ty masz problem ze zrozu...   15.10.2010, 23:04:17
- - krystian1991x   uwierz że wystarczyło displays usunąć z podstron   16.10.2010, 12:06:17


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

 



RSS Aktualny czas: 9.10.2025 - 13:50