如何使用PHP

时间:2018-05-15 17:23:47

标签: php mysql

只是抬头,我对此很新,但如果你能放弃一些知识,我真的很感激。

我有SQL表:

  1. 表'公司'其中包含' company_id'列为主键。

  2. 表&#39>用户'其中包含' company_id'列作为外键,引用'公司'桌子,当然。

  3. 注册后,会创建两种类型的用户。

    1. 经理 - 也创建公司

    2. 加入公司的普通用户

    3. 我希望普通用户拥有他注册的公司的company_id。用户使用唯一的company_code决定他注册的公司。

      到目前为止,代码看起来像这样:

      $sql = "SELECT company_id FROM companies WHERE company_code='$company_code';";
      $result=mysqli_query($conn, $sql);
      $row=mysqli_fetch_assoc($result);
      $result=$row["company_id"];
      $sql = "INSERT INTO users (firstName, lastName, email, user_uid, user_pwd, role, company_id) VALUES ('$first', '$last', '$email', '$uid', '$hashedPwd', '$role', '$result');";
      mysqli_query($conn, $sql);
      header("Location: ../signup.php?singup=success");
      exit();     
      

      似乎一切正常,但不是始终为NULL的company_id列。知道我在这里做错了什么吗?

      我已经考虑过将最后创建的user_id和与company_code匹配的company_id的值分配给变量并运行类似于此的查询:

      UPDATE `users` SET `company_id` = '$company_id' WHERE `users`.`user_id` = $user_id;
      

      但它确实让我的存在变得复杂化。

      非常感谢!

1 个答案:

答案 0 :(得分:2)

您在$result行上命名了变量4

$result=$row["company_id"];

应该是:

$real_id = $row["company_id"];