2011-03-29 69 views
1

我有一个关于形式面向对象编程处理的问题,表单处理OOP PHP

我现在做的方式是:

- > HTML表单(?=行动一action.php的登录=)

action.php将文件:

switch ($_GET['a']) { 

case 'login': 
    login stuff; 
    break; 
} 

,但我不喜欢这种方式(它看起来丑陋,它远远OOP),我认为那里有一个更好的办法,我不知道怎么办。

我想问一下如何在好的方法上做到这一点。顺便说一句我使用MVC

+0

您应该先将实用程序代码分组到功能中,然后再冒险进入OOP和/或以前的MVC流行词。 – mario 2011-03-29 11:39:08

+0

我在我的User类中有一个登录函数,它并不是我将登录代码直接放在action.php文件中,文件如下所示: case'login': $ user-> login($ user,$ pass) ; – 2011-03-29 11:41:44

+0

这应该是一个真正的答案,但太短了,去看看codeigniter,这将是你前进的道路。 – RobertPitt 2011-03-29 11:42:44

回答

4

你要么想出一个MVC框架堆栈,使用OOP自己,或使用其中的许多框架之一。通常的方法是将动作映射到控制器方法。

所以/users/login会是什么样子

class UsersController { 
    function login() { 
     //do your login stuff here 
    } 
} 

作为第一步,你可以将你的行动,以单独的文件,并开始通过它们之间的关系,而不是内部actions.php所有的方法对它们进行分组。