Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数据库更新功能的帮助_Php_Javascript_Jquery_Mysql_Codeigniter - Fatal编程技术网

Php 数据库更新功能的帮助

Php 数据库更新功能的帮助,php,javascript,jquery,mysql,codeigniter,Php,Javascript,Jquery,Mysql,Codeigniter,我正在为客户端开发后端功能。他们希望能够通过一个非常基本的视图添加新记录和编辑旧记录;我正在慢慢地到达某个地方,但我现在被卡住了。恐怕我从一开始就没有把我的方法考虑清楚 这就是目前的情况: “添加”字段集从未显示atm的按钮下滑出。它完全按照它所说的做,向表中添加新记录。这很好,我已经成功地改变了每个表的视图动态字段,等等,insert语句也很好地工作。但是,问题在于编辑功能 当我按下记录旁边的“编辑”按钮时,该行的值将加载到上面的表单中。然后,客户可以编辑并提交这些值。。或者应该能够 我被困在

我正在为客户端开发后端功能。他们希望能够通过一个非常基本的视图添加新记录和编辑旧记录;我正在慢慢地到达某个地方,但我现在被卡住了。恐怕我从一开始就没有把我的方法考虑清楚

这就是目前的情况:

“添加”字段集从未显示atm的按钮下滑出。它完全按照它所说的做,向表中添加新记录。这很好,我已经成功地改变了每个表的视图动态字段,等等,insert语句也很好地工作。但是,问题在于编辑功能

当我按下记录旁边的“编辑”按钮时,该行的值将加载到上面的表单中。然后,客户可以编辑并提交这些值。。或者应该能够

我被困在这里了。大多数情况下,更新声明让我想把头撞到墙上。在表显示的情况下,编写查询并不困难:

$this->db->where'guestid'=>$guestid->更新$table

这里的主键是guestid。我应该使用这个id来知道我要更新哪一行。然而,目前我无法告诉我的表单我要更新哪一行。我可以创建一个隐藏的输入字段,并将ID放入其中。。但是正如我前面提到的,我对不同的表使用这个视图。不是每个表都有guestid等。我当然可以编写一个巨大的switch语句或if结构来确定哪个表以及哪个id应该进入隐藏字段,但我正在寻找一种更简单的方法

这让我很头疼,因为有些表有一个组合主键,例如:我的表event_pass有一个eventID和passID的组合主键。我不确定如何将此链接到表单,以及如何告诉我的应用程序“看,用此PK更新此行中的这些值”

我有一个数组中的所有表元数据,所以我知道PK,等等:

[eventID] => Array
    (
        [Field] => eventID
        [Type] => int(10) unsigned
        [Null] => NO
        [Key] => PRI
        [Default] => 
        [Extra] => 
    )

[passID] => Array
    (
        [Field] => passID
        [Type] => int(10) unsigned
        [Null] => NO
        [Key] => PRI
        [Default] => 
        [Extra] => 
    )
    etc..

任何对我思维过程的帮助都将不胜感激。我不是在寻找完整的代码片段,只是一些关于如何实现这一点的想法和建议,让我的生活更轻松一点。我可以提供更多其他表的屏幕截图,如果需要,我当然可以提供代码。提前谢谢

您需要使用查询中的SHOW INDEX从表中获取主键,并将主键数据发送到页面-正如您所建议的,隐藏输入可能是实现这一点的方法,它当然很好,也很简单,并且应该在每个浏览器中都能做到您所期望的


然后,您需要做的就是在提交请求时读取数据,并相应地为更新查询构建where子句…

我们非常想念您的表模式!我有一个数组中的信息;我知道PK包含哪些值,但我很难将它们真正联系起来。特别是当PK有两个值时。不过我还是要试试看。谢谢