gpt4 book ai didi

php - 如何为mvc crud网站创建动态更新功能

转载 作者:行者123 更新时间:2023-11-29 14:34:45 25 4
gpt4 key购买 nike

用户单击“查看用户”,PHP 逻辑使用 MySQL SELECT 获取数据,将数据传递到 table_view,然后显示系统上的所有“用户”。

每个表格行都有一个“编辑”超链接,用于获取数组或表单元素,该表单元素数组被传递到“Form_Generator”,该“Form_Generator”为表单数组生成 html,表单的值也添加到.

因此,用户面临着一个表单(有时有 20 个大元素),其中表单元素值与数据库中的值相匹配。

我的问题是...

如何使更新动态化?如果不是动态的,我怎样才能让它变得更好?

我目前的方法是这样...

<小时/>

当用户编辑了他们提交表单的值时,然后进行验证。

我可以补充一下,一个表单可以由关系数据库中的 3 个或更多表组成

我可以为每个元素编写一个更新语句,例如:

if ( isset ( $user_input["firstname"] ) )
{
$this -> _database -> update( "UPDATE users SET firstname = '{$user_input["firstname"]}' WHERE user_id = $user_id" );
$this -> _database -> execute();
}
etc etc for ALL fields

或者我可以使用带有 JOINS 的 UPDATE 语句来一次更新多个字段。像这样:

$this-> _database -> custom("UPDATE fitters AS f INNER JOIN user_types AS ut ON f.fitter_id = ut.type_id INNER JOIN users AS u ON u.user_id = ut.user_id SET f.title = '{$user_input["title"]}', f.firstname = '{$user_input["firstname"]}', f.surname = '{$user_input["surname"]}', u.email_address = '{$user_input["email_address"]}' WHERE u.user_id = {$user_input["user_id"]}");

有人知道更好的方法吗?

您如何解决项目中数据库信息的更新问题?

最佳答案

使用应用程序框架使生活变得更加轻松。我个人喜欢使用 CodeIgniter。当使用像 CodeIgniter 这样的框架时,数据库操作变得更加容易。下面是一个示例:

public static function editProfile($data)
{
$user = User::find_by_pk($data['id']);

if (isset($data['username'])) {

$user->username = $data['username'];
}

if (isset($data['password'])) {

$user->hashed_password = User::hash_password($data['password']);
}

$user->save();
}

http://codeigniter.com/

这是一个很棒的网站,提供了帮助您开始了解该主题的教程!

http://heybigname.com/2009/09/04/developing-a-website-with-code-igniter-part-1-configuration/

关于php - 如何为mvc crud网站创建动态更新功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9308377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com