0

目前,我正在使用标准 PHP 开发应用程序。因此,有各种从表单调用的函数。一些示例包括注册、登录、注销等。

我没有为每个函数创建一个单独的文件,而是使用phpscripts.php包含文件夹中的一个文件。为了从 html 输入执行一个函数,我用?action=functionName. 在脚本文件中,我使用 switch/case 树来执行基于S_GET['action']变量的正确函数。

有没有更好的方法来实现对 PHP 函数的 HTML 调用?

4

2 回答 2

1

不,这是将 HTML 表单与 PHP 脚本接口的正确方法。其他替代方案包括使用 URL 重写(将类似的东西转换/actions/functionname/param?action=functionname&param=x),但基本原理保持不变。

于 2012-06-04T19:59:17.503 回答
1

为了您的理智...考虑使用一个脚本来处理上述所有请求。/process_action.php 之类的东西。您确实处理统一的操作,例如:检查以确保功能存在、检查登录用户、连接到数据库、创建共享资源等......

如果您使用的是 Apache,则可以使用 mod rewrite 使 URL 更漂亮。你可以转

/actions/function/?restofquery

进入

/process_action.php?action=function&restofquery

通过使用类似于以下放置在您网站的 .htaccess 文件中的内容。

RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^/actions/([-_a-zA-Z0-9]+)/?$ /process_action.php?action=$1&%1 [L]

作为旁注,您的问题听起来像是您即将发现模型/视图/控制器 (MVC)。有几个很棒的框架,但不要让那些阻止你自己动手。通过实践学习 :)

于 2012-06-04T20:08:26.303 回答