[Framework] Przykład

0

Witam,

Adamie prosiłbym Cię w wolnej chwili, abyś napisał przykładowa pętlę while

while ($row = $query->fetchArray())
{
     //Tu przekazanie do widoku
}

I oczywiście jak to później przekazać już w widoku. Probuje to zrozumieć, ale z while nie chce działać.

Pozdrawiam.

0

Oczywiscie.

Mozemy od razu przekazac uzyskane dane do widoku:

$view->assign('foo', $query->fetch());
// albo:
$view->foo = $query->fetch();
//albo:

while ($row = $query->fetchAssoc())
{
    $view->append('foo', $row);
}

// albo:

while ($row = $query->fetchAssoc())
{
    $view->append('foo', array('bar' => $row['bar'], 'foobar' => $row['foobar']));
}
0

Wielkie dzięki!

Jakbym mógł jeszcze prosić o informację na temat obsługi użytkowników, bo obiło mi się o uszy, że coś takiego tworzysz.

Pozdrawiam.

0

Ale co masz dokladnie na mysli mowiac "obsluga uzytkownika"?

0
Adam Boduch napisał(a)

Ale co masz dokładnie na myśli mówiąc "obsługa użytkownika"?

Chodzi mi o coś w stylu rejestracji/logowania etc. Oczywiście o ile jest takie coś tworzone. Patrząc na kod i przejrzystość obecnego frameworka, wydaje mi się, że oryginalny moduł będzie dużo bardziej wydajny. Obecnie tworzę moduł pracy(jak skończę to wrzucę) i przydały by się jakieś metody uprawnień.

Chyba, że framework będzie tylko tzw. jądrem, a cała reszta nie będzie rozwijana.

Pozdrawiam.

0

Framework to tylko jadro. Wykorzystuje go rowniez w innych projektach. I w takich (rowniez w systemie 4programmers) pisze dodatkowe biblioteki/modele obslugujace rejestracje/logowania uzytkownika. Wiadomo, ten kod w 90% bedzie taki sam we wszystkich projektach (reszta to inne, charakterystyczne opcje panelu rejestracji w danych projektach).

0

Czyli jak dobrze zrozumiałem kiedyś na CVS będą również moduły tworzone dla 4p?
Ok, zatem mam inne pytanie, kiedy można się spodziewać jakiegoś opisu do acl? oczywiście nalazłem kilka innych w sieci, jeden też napisałem, dlatego zależy mi na spojrzeniu na to z punktu widzenia możliwości jakie będzie dawał. Chciałbym wykorzystać frameworka i php do napisania serwisu maksymalnie bezpiecznego, a widzę, że jest to nawet możliwe.

0

Tak jest. Beda udostepnione na CVS :)
Biblioteka ACL wykorzystywana we frameworku jest prosta. Jutro postaram sie uaktualic dokumentacje i dodac cos na ten temat.

0

Wielkie dzięki.

0

Jak mowilem - klaca ACL jest bardzo prosta w Coyote, totez pisania nie ma za duzo:

http://boduch.net/coyote/index.php/Index/Manual#id2547554

Ja teraz podczas pisania nowej wersji 4p, robie tak, ze dane o uprawnieniach userow sa trzymane w bazie danych. Totez za kazdym razem (stosujac przy okazji cache) do klasy ACL laduje dane z bazy i nastepnie w dalszej czesci systemu z ow klasy korzystam, aby okreslic gdzie user ma dostep, a gdzie nie :)

0

Serdecznie dziękuję, w zasadzie to faktycznie dość proste. Pewnie i tak, nie wykorzystam nawet 50% możliwości, ale zawsze warto wiedzieć, do czego można to wykorzystać, a przykład, który podałeś jest idealny w tym celu.

Pozdrawiam.

//Edit

Czy do $acl->allow mogę zrobić tak?

$tablica = array('cos' => true, 'inne' => false);
$acl->allow('Admin', $tablica);

//Edit2, ok, problem rozwiązałem..

0

Niestety nie, ale warto by bylo rozwazyc taka funkcjonalnosc :) Mozna uzyc metody set():

$a = array('foo' => true, 'bar' => false);
foreach ($a as $opt => $v)
{
    $acl->set('Admin', $opt, $v);
}
0
Adam Boduch napisał(a)

Niestety nie, ale warto by bylo rozwazyc taka funkcjonalnosc :) Mozna uzyc metody set():

$a = array('foo' => true, 'bar' => false);
foreach ($a as $opt => $v)
{
    $acl->set('Admin', $opt, $v);
}

Właśnie rozwiązałem to za pomocą set, całkiem przydatne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1