插入具有选择(PDO)和PHP
问题描述:
好了,所以我需要一些值插入表中,但我需要搜索的数据库中的数据之一,所以我试图做这样的插入具有选择(PDO)和PHP
$bookid = $_GET['var'];
$username = $_GET['username'];
$quer2 = "Insert Into reserved (username,bookid) VALUES ((SELECT userid FROM users WHERE username=:username),:var)";
$query2 = $dbc->prepare($quer2);
$query2 ->bindParam(':username',$username);
$query2 ->bindParam(':var',$bookid);
$query2 ->execute();
的问题是,我得到这个错误
SQLSTATE[23502]: Not null violation: 7 ERROR: null value in column "username" violates not-null constraint DETAIL: Failing row contains (6, null, 2014-09-22 13:06:33.262).
我试图在数据库中查询和它的作品,所以我想有在bindParam一些错误,但我不明白它是什么......所以,如果任何人都可以帮助我,我将不胜感激,谢谢
答
变化
$query2 ->bindParam(':var',$var);
到
$query2 ->bindParam(':var',$bookid);
更新您的查询像这样
Insert Into reserved (username,bookid)
SELECT userid, :var FROM users WHERE username=:username
只是绑定PARAMS和运行查询。
有一个错误的位置:$ QUERY2 - > bindParam( ':无功',$ VAR);使用$ BOOKID而不是$ VAR – Pundit 2014-09-22 11:03:37