我想做一個PHP工具,將獲得特定日期之間註冊的用戶。但是,我遇到了一個奇怪的問題。該查詢似乎無法識別表中的所有記錄。讓我解釋。如何解決始終停在特定記錄的mysql SELECT查詢?
這裏是PHP代碼:
function getRegistrations($startDate,$endDate) {
//echo $startDate;
//echo $endDate;
$startDate = date('Y-m-d H:i:s',$startDate);
$endDate = date('Y-m-d H:i:s',$endDate);
$query = "SELECT * FROM database.user WHERE created_date>='".$startDate."' AND created_date<='".$endDate."';";
$result = mysql_query($query);
$data = array();
$data['query'] = $query;
$data['content'] = array();
if($result) {
$data['status'] = 1;
$data['message'] = "Success";
}
$count = 0;
$data['num_rows'] = mysql_num_rows($result);
while ($row = mysql_fetch_assoc($result)) {
$data['content'][$row['user_id']] = $row;
$count++;
}
$data['count'] = $count;
echo json_encode($data);
}
當我運行在MySQL工作臺查詢,它工作得很好。但是,當我通過php運行它時,似乎忽略了某個記錄之後的每條記錄。我可以看到所有記錄,最多爲user_id = 243,然後結束。 num_rows和count仍然相等,並且它們等於內容的長度。但是,如果我直接從mysql工作臺運行查詢,我可以看到它應該高得多。 此外,無論日期如何,它總是停在相同的記錄上。如果我選擇較早的開始日期,那麼它可能會返回50條記錄,但它仍然停留在同一個記錄中。
有沒有人有任何想法?儘管我對MySQL非常陌生,但我一直無法找到任何有類似問題的人。
在此先感謝!
計數是否也沒有增加?你是否迴應了你的查詢,以確保它在你的工作臺中是一樣的? – Wrikken
user_id是主鍵嗎?如果你獲得了多個具有相同user_id的記錄,那麼在某個時刻,你只需要用新行覆蓋以前的記錄。 –
哎呀,它變成了一個很大的錯誤。在使用本地主機測試數據庫時,我正在查看遠程數據庫。 –