【发布时间】:2014-09-10 17:50:36
【问题描述】:
我对准备好的语句相当陌生,并且正在过渡项目...
我必须转换的最后一块是我必须更新多行/记录的一块。
这似乎对我有用...但是,我很好奇并想知道我的技术,并且还发回某种响应(布尔值或其他),表明一切都是成功或失败的。想法?评论?有什么建议吗?
function timeUpdate($uID, $galArr, $timeStamp) {
global $mysqli; //my connection is set elsewhere (bad/good?)
$q = "UPDATE someTable SET timeStamp = ? WHERE galleryID = ? AND uniID = ?";
$stmt = $mysqli->prepare($q);
$stmt->bind_param("iii", $timeStamp, $gID, $uID);
foreach($galArr as $value) {
$gID = $value[0];
if(!$stmt->execute()) {
throw new Exception($stmt->error, $stmt->errno);
}
}
$stmt->close();
}
提前致谢。任何链接,建议都非常感谢。
【问题讨论】:
-
我认为您应该询问如何将 IN() 与准备好的语句一起使用,因为将 IN() 用于 galleryID 会比 foreach 循环更有效。
-
@developerwjk,很酷。我会看看我能找到和阅读的内容。