【发布时间】:2010-12-17 23:32:13
【问题描述】:
function addAlbum($album){
$connection = mysqli_connect(HOST,USER,PASS,DATABASE);
$stmt = mysqli_prepare($connection,'INSERT INTO `'.TABLE_ALBUMS.'` (albumName) VALUES (":album")');
mysqli_stmt_bind_param($stmt,':album');
$result = mysqli_stmt_execute($stmt);
if($result){
return true;
} else {
return false;
}
}
我得到这个错误:
mysqli_stmt_bind_param() [function.mysqli-stmt-bind-param]: Number of elements in type definition string doesn't match number of bind variables
任何帮助将不胜感激。
【问题讨论】:
-
这次 $connection->prepare() 不起作用。我猜想如果你在准备行之后
var_dump($stmt),你会得到一个false。 -
是的,它返回 false,任何想法为什么?
-
可能你的sql语句没有准备好?你检查错误了吗?
-
如果结果为假,它肯定会失败。就像 Jeremy 指出的那样,只需检查错误即可。
标签: php mysql prepared-statement