I have the following date
data, which is used to display MySQL data parameters
x
$tgaw=date("Y-m-10");
$tgak=date("Y-m-09", strtotime("+1 months"));
and I have the following query:
$querylembur = "SELECT SUM(total) as subtotal FROM lembur WHERE tgl between ".$tgaw."
AND ".$tgak." AND staff =".$row['nama'];
$rslembur=mysqli_query($con,$querylembur);
$rowlembur=mysqli_fetch_array($rslembur);
The result I want is that the program will display data from date :$tgaw
to date: $tgak
Advertisement
Answer
You should be using prepared statements here, and also use the MySQL functions to add one month to the upper date in the range.
$sql = "SELECT SUM(total) AS subtotal FROM lembur WHERE tgl BETWEEN ? AND DATE_ADD(?, INTERVAL 1 MONTH) AND staff = ?";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("sss", $tgaw, $tgaw, $row['nama']);
$stmt->execute();
// fetch here
$stmt->close();