我正在构建一个工作中的Web应用程序,我有一个表单,用户可以在其中注册某些类型的信息。
Username | Password | Company
现在我不确定如何处理这个问题。我想要的是当用户提交注册表单时,用户名,密码和公司被写入一个数据表(用户)但因为公司在用户数据表中是外键引用我需要将公司写入单独的数据表(公司)作为主键(当然用户名将被写为FK参考,因为它是一对一的关系)。
我不是在寻找你们的编码解决方案,因为我知道我的PHP和MYSQL我只是在寻找一些伪代码算法来获得创意果汁!
编辑:我使用的是POSTGRESQL而不是MYSQL但是我很确定除了端口号和小的语法更改之外没有什么区别答案 0 :(得分:1)
假设第一列是id
:
$mysqli->query("INSERT INTO company VALUES (NULL, '$company_name')";
$company_id = $mysqli->insert_id;
$mysqli->query("INSERT INTO user VALUES (NULL, '$username', '$password', '$company_id')";
$user_id = $mysqli->insert_id;
$mysqli->query("UPDATE company SET user_id = $user_id WHERE company_id = $company_id)";
答案 1 :(得分:0)
开始在你的表compagny中插入你的compagny。
取回身份证。 (有一个像LastInsertId
这样的sql requete
在表用户中插入用户/密码/ IdCompagny。
编辑:一些帮助:http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html
答案 2 :(得分:0)
有些问题:
如果公司是易于理解的数据,而不是 required-or-thing-break 数据,我可能会首先注册我的用户。然后,当用户登录时,您可以唠叨这些信息以获取更多信息。这具有使用户注册对用户来说不那么繁重的附加优点。
用例:
username
和password