表单的字段值直接指向mysql表

时间:2014-09-07 15:11:57

标签: php mysql forms input field

在PHP / MYSQL中的一些项目和一些尝试使我的编码生活更简单和更好之后,我最近开始编写自己的MVC框架。但是,由于对MYSQL的经验不多,我观察到我实际上总是这样做:我制作一些HTML表单,我用按钮提交,然后将POST数据直接发送到MYSQL表,如:

$data1 = $_POST['data1']
$data2 = $_POST['data2']
// ...
$data999 = $_POST['data999']
// some data validation
// ...
magicFunction( $data )

当然,magicFunction就像使用指定数据生成mysql INSERT / UPDATE / DELETE代码的函数一样。创建一些只从Controller处理$ _POST变量并从我那里得到一些数据验证限制的类和方法,这不是一个坏主意吗?住这么容易。但是,我想知道的是:将表单字段命名为与mysql表列相同(可能有一些已定义的例外)是一种好的做法吗?如果是的话,我应该在这个项目中考虑什么呢?

1 个答案:

答案 0 :(得分:1)

我总是使用PHP的PDO类进行数据库连接。在我看来,这是处理数据库事件的最佳方式。

继承人的链接。阅读如何建立连接,您必须阅读如何准备和执行语句以防止SQL注入: http://us3.php.net/manual/en/intro.pdo.php

此外,我还想为数据库中的每个表创建一个类。

示例:

$username = $_POST['username'];
$userTable = new UserTable();
$userTable->selectUserByUsername($username);

当您了解PDO类的工作原理时,您可以直接安全地使用$ _POST数据来查询数据库。