Pierwsza propozycja:
Jakas funkcja wewnątrz klasy:
<?php function checkUser($id) { { return -2; } $user = $db -> Execute('SELECT * FROM USERS WHERE `id`='.$id); if(!$user -> fields['id']) { return -1; // Tutaj rownie dobrze moze byc FALSE, albo 'N' } else { return $user -> fields; } } ?>
Plik php:
<?php $result = $klasa -> checkUser($_GET['id']); $tpl -> assign('result', $result); ?>
No i wreszcie pliki opt:
<?php {if $result > 0) Witaj {$result['login']} {elseif $result == -1} Nie ma takiego usera {else} Podałeś nieprawidłowe id. {/if} ?>
Druga propozycja:
Jakas funkcja klasy:
<?php function checkUser($id) { { return 'Podales nieprawidzlowe ID'; } $user = $db -> Execute('SELECT * FROM `users` WHERE `id`='.$id); if(!$user -> fields['id']) { return 'Nie ma takiego usera'; } else { return 'Witaj '.$user -> fields; } } ?>
Plik php:
<?php $result = checkUser($_GET['id']); $tpl -> assign('result', $result -> fields['login']); ?>
No i .tpl
<?php {$result}. ?>
Chodzi mi konkretnie o to, czy jest sens robienia warunkow (podczas pisania czegos bardziej skomplikowanego bardzo pomieszanych) w plikasz szablonow, skoro moge tam przekazac gotowy wynik do wyswietlenia... Co prada w tym przykladzie nie do konca jest jasne o co chodzi, ale np. przy rejestracji uzytkownikowi moze wyswietlic sie 5 roznych bledow (puste pole, powtorzony login, powtorzony mail, zle haslo itd.). Gdy przekazuje wyniki jako liczby (albo wartosci TRUE, FALSE, 'Y', 'N' etc.), w szablonach tworza sie bardzo skomplikowane warunki. A w koncu nie o to chodzi. Czy moge przekazywac gotowy tekst do szablonu i czy ma to sens? Caly skrypt pisalem od podstaw i ma sluzyc tylko za przyklad, wiec gdzies moze byc blad. Nie zwracajcie na to uwagi
