这是我的 php 脚本的一部分,它必须缺少一些东西:
$startIndex = 7;
$endIndex = 303;
$defaults = range($startIndex, $endIndex);
$sql = "INSERT INTO items (itemId, userId) VALUES ";
$part = array_fill(0, count($defaults), "(?, ?)");
$sql .= implode(",", $part);
try {
$db = DB::getInstance();
$stmt = $db->dbh->prepare($sql);
$i = 1;
foreach($defaults as $default) {
$stmt->bindParam($i++, $default);
$stmt->bindparam($i++, $userId);
}
if ($stmt->execute()) {
echo "result=ok";
}else {
echo 'invalid query';
}
}catch(PDOException $e) {
echo $e->getMessage();
}
多次插入正在发生,一切似乎都很好,除了所有 itemId 字段都以 303 的形式出现($defaults 数组中的最后一个元素)。foreach 循环似乎像我预期的那样工作,因为回显 $default 给了我我期望的整数序列。所以,应该是绑定的问题
请帮忙 :)