Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Problem z szablonem Smarty
-m_k-
post
Post #1





Goście







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
Go to the top of the page
+Quote Post
FliSs_tCv
post
Post #2





Grupa: Zarejestrowani
Postów: 198
Pomógł: 3
Dołączył: 27.02.2007
Skąd: Tczew

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


po co tworzysz 2 razy ten sam temat?? śmiecisz na forum (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) nie rób tak nigdy

// Masz opcje raportuj więc z niej korzystaj, a nie zaśmiecaj tematu.
// ~webdicepl
Go to the top of the page
+Quote Post
-m_k-
post
Post #3





Goście







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. (IMG:http://forum.php.pl/style_emoticons/default/wstydnis.gif)
Go to the top of the page
+Quote Post
Skie
post
Post #4





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


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}


Ten post edytował Skie 27.08.2008, 06:31:58
Go to the top of the page
+Quote Post
-m_k-
post
Post #5





Goście







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
Go to the top of the page
+Quote Post
JoShiMa
post
Post #6





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


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ć.
Go to the top of the page
+Quote Post

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: 28.08.2025 - 16:25