У меня возникли проблемы с обновлением внешнего ключа, ограничение было установлено как на каскаде обновления при удалении каскада в phpmyadmin. Я могу вставить все остальное, только внешний ключ user_id отображается как null, а не обновляется до правильного идентификатора. Где моя ошибка? id идентификатор таблицы, я знаю, что мне не нужно вводить в sql-инструкцию; user_id является внешний ключ связан с tbl_userupdate sql foreign key автоматически php
Вставка кодов базы данных
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();
}
Где: '$ user_id' установлен? – Sean
tbl_details user_id - это внешний ключ tbl_users user_id – user999
Как вы устанавливаете переменную PHP '$ user_id'? –