自动更新sql外键php

时间:2016-03-18 23:36:08

标签: php mysql foreign-keys

我无法让外键自行更新,约束被设置为在phpmyadmin中删除级联上的更新级联。 我能够插入其他所有内容,只是外键user_id显示为null而不是更新为正确的id。 我的错误在哪里? id表id,我知道我不需要输入sql语句; user_id是与tbl_user链接的外键

插入数据库代码

try
    {
      $dbh = new PDO("mysql:host=localhost;dbname=$database", $username, $password);
      $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

      $stmt =$dbh->prepare( "INSERT INTO tbl_details (user_id, name,address,postcode)
              VALUES(:user_id,:name,:address,:postcode)");



      $stmt->bindParam(':user_id',$user_id);
      $stmt->bindparam(':name', $name);
      ........
      $stmt->execute(); 

      $dbh = null;
    }catch (PDOException $e) {
            $dbh = null;
            print "Error!: " . $e->getMessage() . "<br/>";
            print "PHP Line Number: " . $e->getLine() . "<br/>"; 
            print "PHP File: " . $e->getFile() . "<br/>";
            die();
      }

1 个答案:

答案 0 :(得分:0)

是的,它现在正在工作,我错过了这个

$stmt = $auth_user->runQuery("SELECT * FROM tbl_details WHERE user_id=:user_id");
$stmt->execute(array(":user_id"=>$user_id));

谢谢@sean和@Darwin von Corax