Php datetime、SELECT和prepared语句
我想用准备好的语句运行同一个查询两次,但无法使其工作 以下是我得到的:Php datetime、SELECT和prepared语句,php,mysqli,prepared-statement,Php,Mysqli,Prepared Statement,我想用准备好的语句运行同一个查询两次,但无法使其工作 以下是我得到的: $yearFrom = date("Y-01-01"); $yearTo = date("Y-12-31"); $monthFrom = date("Y-01-01"); $monthTo = date("Y-01-31"); $stmt = $mysqli->stmt_init(); $getuserpoints = "SELECT SUM(points) as userpoints FROM ".$prefi
$yearFrom = date("Y-01-01");
$yearTo = date("Y-12-31");
$monthFrom = date("Y-01-01");
$monthTo = date("Y-01-31");
$stmt = $mysqli->stmt_init();
$getuserpoints = "SELECT SUM(points) as userpoints FROM ".$prefix."_publicpoints
WHERE date BETWEEN ? AND ? AND fk_player_id = ?";
if($stmt->prepare($getuserpoints)){
$stmt->bind_param('ssi', $yearFrom,$yearTo,$playerid);
$stmt->execute();
if (!$stmt->execute()) {
echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
$stmt->bind_result($userPoints);
$stmt->bind_param('ssi', $monthFrom,$monthTo,$playerid);
$stmt->execute();
if (!$stmt->execute()) {
echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
$stmt->bind_result($userMPoints);
}
我认为是日期时间造成了麻烦。我该怎么做
提前感谢:-)你说的“无法使用”是什么意思?您是否收到错误消息,是第二个
$stmt->execute()代码>不执行,是第二个$stmt->execute()代码>使用第一个参数执行?Bugger。。。发现我没有拿到:-/我的坏东西。它现在运行得很好:-)@Mansa:您实际上执行了四次查询,而不是两次。在这种情况下,这并没有什么坏处,但您仍然应该注意到这一点,因为对于其他查询,您可能会得到意外的结果。