Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.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_Html_Mysql_Sql_Phpmyadmin - Fatal编程技术网

Php 在一个数据库中合并两个表

Php 在一个数据库中合并两个表,php,html,mysql,sql,phpmyadmin,Php,Html,Mysql,Sql,Phpmyadmin,我制作了这个员工信息系统,员工可以在这里给出自己的反馈。下面是它的样子: 当您单击“员工反馈”按钮时,它会将您重定向到此页面: 现在我的数据库中有两个表,即employee和tbl_反馈: 问题在于不同的ID。如何将两者合并 对于employee表: 对于tbl_反馈: 我希望当用户点击“员工反馈”时,全名自动显示出来。我认为只有合并这两个表才有可能 我不知道你们需要什么源代码,但只要告诉我,我会提供。非常感谢你 请看一下@Pete的好建议,因为这将帮助我们帮助您 以下只是关于如何使用

我制作了这个员工信息系统,员工可以在这里给出自己的反馈。下面是它的样子:

当您单击“员工反馈”按钮时,它会将您重定向到此页面:

现在我的数据库中有两个表,即employee和tbl_反馈:

问题在于不同的ID。如何将两者合并

对于employee表:

对于tbl_反馈:

我希望当用户点击“员工反馈”时,全名自动显示出来。我认为只有合并这两个表才有可能


我不知道你们需要什么源代码,但只要告诉我,我会提供。非常感谢你

请看一下@Pete的好建议,因为这将帮助我们帮助您

以下只是关于如何使用主键和外键链接表的提示:

create table employee
(
    id         integer,
    fullname   varchar(64),
    username   varchar(32),
    email      varchar(128),
    address    varchar(512),
    contact    varchar(16),
    gender     varchar(16),
    password   varchar(32),
    constraint primary_key_employee primary key (id)
);


create table feedback
(
    id           integer,
    employee_id  integer,
    website      varchar(128),
    message      varchar(2048),
    constraint primary_key_feedback primary key (id),
    constraint foreign_key_feedback_employee foreign key (employee_id) references employee (id)
);

select 
    a.fullname,
    a.email,
    b.website,
    b.message
from
    employee a
    join 
    feedback b
    on a.id = b.employee_id;
在您的表中有许多可以改进的地方(例如,没有明确的密码)。这并不是故意的,你显然是在做一个开始,考虑你需要什么,这很好。我建议您花一点时间来理解SQL数据库是如何工作的。这里有一个免费的资源。我已经尝试过提供你可以找到的实用解释,还有很多其他资源


我希望一切顺利。

欢迎来到SO。请带我去参观一下。如果您不提供任何代码,我们无法为您提供帮助-请查看如何创建一个表,如果员工永远只能发表一条反馈意见,那么您只需要一个表。但这听起来不现实。您可能希望反馈表根据员工的唯一ID与员工表建立外键关系。这样,员工可以随时间留下大量反馈,并且您可以轻松地将其与员工关联。这是正常的关系数据库设计,我建议您阅读一下,我想您还没有理解这个概念。@ADyson这正是我想要实现的,但如何将对象从一个表组合到另一个表?首先,您自己决定,您希望将逻辑写入何处,存储过程还是服务器端程序?为了回答您的问题,两个表中都需要一些共同点,以便您可以合并它。我想你可以使用Email字段。同时,你的表结构并没有特别阻止你在屏幕上显示员工的姓名(注意显示,他们不需要重新键入,甚至作为表单的一部分,应该是只读的)。您只需将员工ID传递到反馈页面的查询字符串,并使用该ID从数据库中获取正确的员工记录,然后使用来自该记录的名称。然后,您还可以在隐藏字段中使用该ID将表单中的记录与正确的员工相关联——在提交表单时,您将获得该ID。