Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][TPL] przekazywanie zmiennych GET
krystian1991x
post
Post #1





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

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


Witam chce przekazać zawartość zmiennej get z linków do include ale coś nie działa więc tak zaczynam to w taki sposób

w pliku tpl mam link
  1. <a href="index.php?id=news"><img border="0" src="templates/images/aktualnosci.jpg"></a>

w pliku php
  1. $site == $_GET['id'];
  2.  
  3. $smarty->assign('site', $site);

oraz ponownie w pliku tpl
  1. {if $smarty.get.id == ""}
  2. {include file="news.tpl"}
  3. {/if}
  4. {if $smarty.get.id != ""}
  5. {include file="zmiennaget!.tpl"}
  6. {/if}


w tym miejscu "zmiennaget" chce wstawić zawartość zmiennej get ale nie wiem jak bo gdy wstawiam {$site} to nie działa
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Mackos
post
Post #2





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


Nie wiem czy to o to chodzi ale chyba powinno być $site = $_GET['id'];
bo zmiennej $site nadajesz wartość z $_GET['id'], a ty w swoim kodzie ją jedynie porównujesz, więc pozostaje ona nadal pusta.


--------------------
WebLemon.pl - projektowanie stron www, reklama i PR w internecie - Adwords, Facebook.
Go to the top of the page
+Quote Post
rocktech.pl
post
Post #3





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

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


Zrób to tak.
Co bedzie jak id=admin albo admin_panel itp.?
  1. switch($_GET['id']) {
  2. case 'a':
  3. $site = 'a';
  4. break;
  5. case 'b':
  6. $site = 'b';
  7. break;
  8. default:
  9. $site = 'news';
  10. };
  11. $smarty->assign('site', $site);

W szablonie.
  1. {include file=`$site`.tpl}


Ten post edytował rocktech.pl 9.10.2010, 14:31:16


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
krystian1991x
post
Post #4





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

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


nie za bardzo działa to ostatnie rozwiązanie tzn wszędzie wczytuje mi news.tpl nieważne jaka jest zawartość id
Go to the top of the page
+Quote Post
rocktech.pl
post
Post #5





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

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


Pokaż kod php.


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
krystian1991x
post
Post #6





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

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


  1. switch($_GET['id']) {
  2. case 'a':
  3. $site = 'a';
  4. break;
  5. case 'b':
  6. $site = 'b';
  7. break;
  8. default:
  9. $site = 'news';
  10. };
  11. $smarty->assign('site', $site);
Go to the top of the page
+Quote Post
rocktech.pl
post
Post #7





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

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


Powyższy skrypt zadziała tylko przy takim wywołaniu.

index.php?id=a
index.php?id=b

W takim przypadku.

index.php?id=inna_akcja

Potrzebujesz dodać do instrukcji switch.
  1. case 'inna_akcja':
  2. $site = 'inna_akcja';
  3. break;


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
krystian1991x
post
Post #8





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

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


nie rozumiem tego co ty chcesz zrobić za bardzo cóż dla mnie to jest jakieś dziwne oO po co jakieś a i b ? przecież jak dam ?id=admin to o jezus w pliku admin.php ustawie sobie warunek i zabezpieczę go sobie tak że user nie będzie miał dostępu i co to ma być ta inna_akcja ?
Go to the top of the page
+Quote Post
rocktech.pl
post
Post #9





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

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


Poniższe rozwiązanie pozwala mi metodą prób i błędów sprawdzić jakie pliki .tpl znajdują się w katalogu templates, przy okazji zarzynając twoją aplikację masą notice'ów o niezdefiniowanych indeksach i Błędów (Smarty error: unable to read resource). Jeżeli takie rozwiązanie ci nie przeszkadza to lecisz.
  1. {include file=`$smarty.get.id`.tpl}


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
krystian1991x
post
Post #10





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

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


ok ale tamto rozwiązanie "inna_akcja" coś nie działa tongue.gif
Go to the top of the page
+Quote Post

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 Aktualny czas: 22.08.2025 - 11:17