在PHP中,从动作表单调用函数的最佳方式是什么?

在PHP中,从动作表单调用函数的最佳方式是什么?,php,mysql,forms,submit,database-connection,Php,Mysql,Forms,Submit,Database Connection,我想用PHP和XHTML在MySQL数据库中插入数据 我把数据库的函数放在一个文件中:database.inc.php,在这个文件中我写了很多函数:function insert\u city($\u POST),function insert\u state($\u POST),function insert\u customer($\u POST),等等 我想知道调用这些函数的最佳方式。对于每个事务,我都有一个XHTML文件 比如说。这是我的addcustomer表单的结构: <for

我想用PHP和XHTML在MySQL数据库中插入数据

我把数据库的函数放在一个文件中:
database.inc.php
,在这个文件中我写了很多函数:
function insert\u city($\u POST)
function insert\u state($\u POST)
function insert\u customer($\u POST)
,等等

我想知道调用这些函数的最佳方式。对于每个事务,我都有一个
XHTML
文件

比如说。这是我的
addcustomer
表单的结构:

<form action="addcustomer.php" method="POST">
  <input>...
  </input>
</form>
使用这种方法,我会丢失表单,在用户插入其数据后,我希望显示表单和错误消息或成功

我知道将函数分组到一个文件中是一个很好的做法,但我不喜欢像上面那样编写脚本,我更喜欢将每个函数编写在不同的文件中


提示、建议或谴责?

将表单的操作设置为
$\u服务器['PHP\u SELF']
,以便在提交表单时加载相同的文件

然后在该文件的顶部添加如下内容:

if ( $_SERVER['REQUEST_METHOD'] == 'post' ) {
    require( 'addcustomer.php' );
    if (insert_state($_POST)){
        $form_status = "Good";
    } else {
        $form_status =  "Bad insertion";
    }
}
然后,您可以使用$form_status在表单中显示消息


理想情况下,虽然您希望将代码与html分开,但这是另一个教训。

我认为,对于小型网站和整个网站上的一个或两个表单,可以(稍微)放弃这种分离。虽然你应该知道你的网站是否越来越大,但是你应该考虑MVC,甚至是一个框架。我同意,但是把代码放在一个文件中并在另一个文件中查看并不复杂。@ GalEN,我可以在那里写一篇关于“不同的教训”的好文章?阅读关于MVC模式的所有内容。基本上,将逻辑与表示分离(或将php代码与html代码分离)。
if ( $_SERVER['REQUEST_METHOD'] == 'post' ) {
    require( 'addcustomer.php' );
    if (insert_state($_POST)){
        $form_status = "Good";
    } else {
        $form_status =  "Bad insertion";
    }
}