如何在php中比较时间戳的月份与Spinner中选择的月份
这是我的report.php如何在php中比较时间戳的月份与Spinner中选择的月份,php,mysql,Php,Mysql,这是我的report.php <?php require("config.inc.php"); if (!empty($_POST)) { $query = "SELECT * FROM user WHERE position = 'user'"; try { $stmt = $db->prepare($query); $result = $stmt->execute()
<?php
require("config.inc.php");
if (!empty($_POST)) {
$query = "SELECT * FROM user WHERE position = 'user'";
try {
$stmt = $db->prepare($query);
$result = $stmt->execute();
}
catch (PDOException $ex) {
//die("Failed to run query: " . $ex->getMessage());
$response["success"] = 0;
$response["message"] = "Database Error 1. Please Try Again!";
//die(json_encode($response));
}
$row = $stmt->fetchAll();
//No. of shipment that is requested
$query = "SELECT p.*,s.* FROM parcel p ,shipmentrequest s
WHERE p.parcelstatus= 'requested'
AND p.receiverid = s.receiverid
AND MONTH(FROM_UNIXTIME(s.requestTime`)) = 05";
//Again, we need to update our tokens with the actual data:
try {
$stmt = $db->prepare($query);
$result = $stmt->execute();
}
catch (PDOException $ex) {
//die("Failed to run query: " . $ex->getMessage());
$response["success"] = 0;
$response["message"] = "Database Error 2. Please Try Again!";
//die(json_encode($response));
}
$shipmentrow = $stmt->fetchAll();
$response["success"] = 1;
$response["message"] = "Summary Report is displayed";
//echo json_encode($response);
?>
<table border="0px" >
<tr>
<td>Number of registered user</td>
<td><input type="text" name="name" value="<?php echo sizeof($row) ?>" readonly/></td>
</tr>
<tr>
<td>Number of requested shipment</td>
<td><input type="text" name="name" value="<?php echo sizeof($shipmentrow) ?> "readonly/></td>
</tr>
</table>
<?php
//for a php webservice you could do a simple redirect and die.
//header("Location: login.php");
//die("Redirecting to login.php");
}
else {
?>
<!DOCTYPE html>
<html>
<link rel="stylesheet" type="text/css" href="StylePMSS.css" ></link>
<head>
<title>Summary Report</title>
</head>
<body >
<div style="text-align: center">
<img src="PosMalaysia.png" class="image" height="150" width="550" ></img>
</div>
<h1><center>Summary Report</center></h1>
<center>
<form action="report.php" method="post">
<table border="0px" >
<tr>
<td>Month:</td>
<td><select id='month' name='month'>
<option value='None'>Select an option</option>
<option value='01'>January</option>
<option value='02'>February</option>
<option value='03'>March</option>
<option value='04'>April</option>
<option value='05'>May</option>
<option value='06'>June</option>
<option value='07'>July</option>
<option value='08'>August</option>
<option value='09'>September</option>
<option value='10'>October</option>
<option value='11'>November</option>
<option value='12'>December</option>
</select>
</td>
</tr>
</table>
<td><input type="submit" value="Check Report" /></td>
</form>
</center>
</body>
</form>
</html>
<?php
}
?>
我想问为什么我的查询$query=“从包裹p,发货请求s中选择p,s.*”
其中p.parcelstatus='请求'
p.receiverid=s.receiverid
和月份(从_UNIXTIME(s.requestTime))=05”代码>
它没有任何MySQL错误,但它不会返回我想要的结果。
我想要的是,当我从Spinner中选择月份时,它将执行查询并获取该月份的数据行数。根据您的查询,它将始终返回五月的项目(month()=05
)。如果希望它返回不同的月份,则必须使用$\u POST['month']
作为查询的输入
$query = "SELECT p.*,s.* FROM parcel p ,shipmentrequest s WHERE p.parcelstatus= 'requested' AND p.receiverid = s.receiverid AND MONTH(FROM_UNIXTIME(s.requestTime)) = :month";
$stmt = $db->prepare($query);
$stmt->bindValue(':month', $_POST['month']);
$result = $stmt->execute();
但问题是,我直接在数据库中的MySQL中尝试查询,也无法根据我选择的月份检索任何内容。您在var_dump($_POST)时看到预期的输出了吗?我没有看到预期的输出