MYSQL - 多表更新问题

时间:2016-03-23 20:03:15

标签: php mysql updates

我已经阅读了多个答案,但似乎没有一个对我有用。

我有两张桌子Cus_acc_details& Cus_Register:

Cus_acc_detail

1 : CustomerID
2 : Acctid
3  : CUS_Fname
4  : Cus_Lname
5  : CUS_Phone
6  : Cus_Email

Us_Register

1  : Cus_Email
2  : Cus_Password
3  : Cus_confirm_Password

我想更新Cus_acc_detail的所有字段,只更新Cus_regmail的Cus_regmail。 我有以下内容:

   <?php
   $user = $_SESSION["Cus_Email"];
   if (isset($_POST['Update'])) {


  $UpdateFname = $_POST['fname'];
  $UpdateLname = $_POST['Lname'];
  $UpdateEmail = $_POST['email'];
  $UpdatePhone = $_POST['phone'];
  }

  $sql = $dbc->query("UPDATE Cus_Register r INNER JOIN Cus_acc_details d ON( r.Cus_Email = d.Cus_Email) SET CUS_Fname = ' $UpdateFname', CUS_Lname = ' $UpdateLname', CUS_Email = ' $UpdateEmail', Cus_Phone = ' $UpdatePhone' WHERE CUS_Email = '$user' ");
 header('Location: Cus_Account.php');
 ?>

页面只是不更新​​,有人可能会指出我出错的地方。

1 个答案:

答案 0 :(得分:0)

应为CUS_Email中的两个表指定字段SET

UPDATE Cus_Register r INNER JOIN Cus_acc_details d ON( r.Cus_Email = d.Cus_Email) SET CUS_Fname = ' $UpdateFname', CUS_Lname = ' $UpdateLname', r.CUS_Email = ' $UpdateEmail', d.CUS_Email = ' $UpdateEmail', Cus_Phone = ' $UpdatePhone' WHERE CUS_Email = '$user'