Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: funkcja if w szablonie smarty ?
Forum PHP.pl > Forum > PHP
polzaq
Witam,
Jestem poczatkujacym edytorem kodu. Proszę o możliwie dużą dozę wyrozumiałości smile.gif

Mam dostępny portal i potrzebę przerobienia jednej funkcjonalności i niestety nie mam specjalnego dostępu do czegokolwiek.
Dostep jaki mam to jedynie dostęp do plików szablonów ( Smarty ).
Chodzi o otwieranie popupa za pomocą jakiegoś linka i wysyłanie maila. Przy czym zaznaczam - jedyne do czego mam dostęp to szablony (Smarty). (jeśli ktoś miałby pomysł jak inaczej to zrobić - proszę o info, postaram się o odpowiedni dostęp, nie wiem jednak na ile uda mi się to załatwic)

Wymyśliłem więc obejście problemu w taki sposób:
1. Jeśli stan magazynowy mamy "niedostepny" to dajemy Panstwu mozliwosc wyslania wiadomosci z pozostawieniem np nru tel i swojego maila.
2. W szablonie smarty mamy jakas prosta funkcje ktora rozpoznaje, czy tam jest napisane "niedostepny", "dostepny", "2dni", etc i jesli ma dostępność "niedostępny" to generuje linka z jakimś tekstem dookoła. Link ten otweira popupa z baardzo prostym formularzem i buttonem 'wyslij'

3. Wiem, ze to jest kawal kodu nastepny, w miejscu nie do konca na to przeznaczonym, ale jednak jest to aktualnie jedyne miejsce gdzie mozna to wsadzic.
4. Nasuwa mi sie tylko jedno pytanie - jak i kiedy uzywane sa pliki szablonu - problem moze byc - bo nie wiem, czy skrypt zamieszczony w pliku z szablonem widziałby to co generuje się na wyjsciowej stronie ?

Dziekuje za wyrozumialosc i cierpliwość. Skoro dotrwałeś/łaś już do tego miejsca proszę o jakąś odpowiedź smile.gif)
rocktech.pl
Witam.

Jak człowiek się uprze ...

Naprowadzę Cię {php}{/php} i api.get.template.vars.tpl.

Powodzenia:)
polzaq
witam ponownie,

Dziękuję za baaaardzo szybką odpowiedz.

Jeszczez tylko zapytam, bo zformułowanie o upieraniu się budzi we mnie niepokój - czy to da się zrobić w ten sposób i będzie działać poprawnie?

POtrzebuje motywacji, jeśli ktoś mi powie, że to możlwe, uwierzę na słowo, kupię słownik i zacznę walczyć wink.gif.

podbijam tylko po to, zeby jakąś motywację uszlyszec
pozdrawiam
phpion
Cytat(polzaq @ 4.01.2012, 16:07:25 ) *
POtrzebuje motywacji, jeśli ktoś mi powie, że to możlwe, uwierzę na słowo, kupię słownik i zacznę walczyć wink.gif.

podbijam tylko po to, zeby jakąś motywację uszlyszec

Jest to możliwe.
polzaq
Cytat(phpion @ 5.01.2012, 10:11:08 ) *
Jest to możliwe.


smile.gif)

Dziękuję, zaraz się biorę za poszukiwania smile.gif

PO długim czasie pozwolę sobie odkopać...

rozumiem, że fragment kodu powinienem wstawić w {php}kod_php{/php} do pliku szablonu?

pozdrowienia...
boshentz
Witaj, co prawda w Smarty można użyć {php}{/php}, ale to jest omijanie czegoś, co Smarty ma ładnie rozbudowane :]

podam przykład:
Jeśli z php smarty dostaje taką zmienną:

  1. $smarty->assign('cos', 'niedostępny');


To w smarty jesteśmy w stanie sprawdzić wartość cosia i ewentualnie >coś< z tym zrobić smile.gif
przykład:

[SMARTY] pobierz, plaintext
  1. {if $cos == 'niedostępny'}
  2. <a href="linkDoFormularza.html" target="_blank">Link do formularza</a>
  3. <div>Coś co ma być wyświetlane, jeśli $cos jest inne niż niedostępny</div>
  4. {/if}
[SMARTY] pobierz, plaintext



// jeśli dobrze zrozumiałem problem oczywiście smile.gif
polzaq
Cytat(boshentz @ 26.03.2012, 01:44:49 ) *
podam przykład:
Jeśli z php smarty dostaje taką zmienną:

  1. $smarty->assign('cos', 'niedostępny');


Dziękuję za odpowiedź w temacie,

Troche to niestety nie jest tak - mówie tutaj o bardzo specyficznej, zamkniętej aplikacji w której jedyne co mogę zrobić to edytować kod szablonów właśnie. Kodu php nie widziałem na oczy... sad.gif

Po załadowaniu strony wyświetla się stan - niedostępny, dostępny po 3 dniach, dostępny na już, itp. Teraz chciałbym w szablonie rozpoznać ten tekst i podmienić w przyp. tekstu 'niedostępny' na prosty link do czegokolwiek.

Miałoby to działać tak:

1. Jeśli stan magazynowy mamy "niedostepny" to dajemy Panstwu mozliwosc wyslania wiadomosci z pozostawieniem np nru tel i swojego maila. W tym popupie właśnie.
2. W szablonie smarty mamy jakas prosta funkcje ktora rozpoznaje, czy tam jest napisane "niedostepny", "dostepny", "2dni", etc i jesli ma dostępność "niedostępny" to generuje linka z jakimś tekstem dookoła. Link ten otweira popupa z baardzo prostym formularzem i buttonem 'wyslij'

3. Wiem, ze to jest kawal kodu nastepny, w miejscu nie do konca na to przeznaczonym, ale jednak jest to aktualnie jedyne miejsce gdzie mozna to wsadzic.
4. Nasuwa mi sie tylko jedno pytanie - jak i kiedy uzywane sa pliki szablonu - problem moze byc - bo nie wiem, czy skrypt zamieszczony w pliku z szablonem widziałby to co generuje się na wyjsciowej stronie ?

podbijam,

proszę o pomoc, ja bije się z tym od miesięcy, i nie mam pomysłu co robić. A aplikacji zmienić nie mogę sad.gif(

pozdrowienia
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.