Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z szablonem Smarty
Forum PHP.pl > Forum > Przedszkole
m_k
Witam
Mam stronę, na której jest pole tekstowe do wpisania pewnego numeru i w zależności, czy użytkownik to pole uzupełnił, podejmowana jest dalsza akcja. Jeżeli to pole zostało wypełnione, przeszukiwana jest baza, w przeciwnym wypadku, użytkownik otrzymuje komunikat. Chcę w tym celu użyć systemu Smarty. Zastanawiam się, jak to najlepiej rozwiązać. Pierwsze rozwiązanie:

jeżeli wypełniono
{
przeszukaj bazę
wczytaj wyniki
wczytaj szablon
}
w przeciwnym wypadku
{
wczytaj szablon z komunikatem
}

Zastanawiam się, czy można to zrobić w jednym szablonie? Jednak muszę najpierw sprawdzić, czy pole zostało wypełnione i od tego zależy, czy przeszukam bazę. Za pomoc z góry dziękuję.

Pozdrawiam
FliSs_tCv
po co tworzysz 2 razy ten sam temat?? śmiecisz na forum exclamation.gif nie rób tak nigdy

// Masz opcje raportuj więc z niej korzystaj, a nie zaśmiecaj tematu.
// ~webdicepl
m_k
Akurat miałem to szczęście, że gdy wysyłałem posta, forum chwilowo nie działało, więc niezamierzenie post został wysłany dwa razy. Sorki. wstydnis.gif
Skie
Bardzo prosto mógłbyś to zrobić

Jeżeli zawartość tego pola teksowego to zmienna np. $_POST['pole']; a w formularzu dałeś action=plik.php?action=wypelniony.

to dodaj do PHP takie coś:
Kod
$smarty -> assign(array("Pole" => $_POST['pole'], "Action" => $_GET['action']));


a w TPL tak:
Kod
{if !$Action}
     formularz z polem tekstowym
{elseif $Action == 'wypelniony' && $Pole != ''}
     przeszukanie bazy
{elseif $Action == 'wypelniony' && $Pole == ''}
     wyswietlenie bledu
{/if}
m_k
Dziękuję za odpowiedź. Właściwie wszystko jest jasne, z wyjątkiem umieszczenia operacji przeszukania bazy w szablonie. Istnieje oczywiście możliwość włączenia kodu php do szablonu tpl, ale czy w inny sposób można to rozwiązać?
Pozdrawiam
JoShiMa
Cytat(m_k @ 27.08.2008, 10:41:42 ) *
Właściwie wszystko jest jasne, z wyjątkiem umieszczenia operacji przeszukania bazy w szablonie. Istnieje oczywiście możliwość włączenia kodu php do szablonu tpl, ale czy w inny sposób można to rozwiązać?

W sposób zgodny z ideą szablonu czyli najpierw zareagować na wartość zmiennej $_POST['pole'] i przeszukać bazę bądź nie a dopiero potem wysłać odpowiednie dane do szablonu i je tam zaprezentować.
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.