2011-02-11 99 views
-2

我可以填充在PHP/MySQL的結果沒有問題,而且下面的示例代碼可以確認:PHP/MySQL的提取結果

$query = "SELECT id, firstname, lastname, nums_ty FROM 
     table_name 
     WHERE nums_ty ='5' 
     ORDER BY id Desc"; 

我可以查看數據庫中的所有記錄,毫不費力。我想要實現的是這樣的:我想在同一頁面上創建一個表單,用戶可以選擇ALL來顯示所有結果,或者根據日期選擇結果(地址爲'$startDate''$endDate'之間,但默認值應爲ALL。

+2

你的問題是什麼?你寫了什麼,它是如何工作的?你需要什麼幫助理解? – 2011-02-11 15:09:04

+0

@dan Grossman這是一個場景,我有一個賬戶列表頁面,用戶訪問該頁面查看他們的交易歷史記錄,並獲得所有交易列表和分頁。這排序!所有我試圖做的是,在同一頁面上,我希望能夠使用如下形式過濾結果:在同一頁面上按日期或月份查看歷史記錄 – Gruther 2011-02-11 15:17:54

+0

這是一個功能描述,而不是一個問題。將表單添加到頁面中並編寫代碼以在填寫完成後修改查詢。如果有一部分你不知道如何去做,那**可能是一個問題。如果您編寫了代碼,並且某些部分無法按預期工作,那麼**可能是個問題。 – 2011-02-11 15:18:46

回答

2

這是你想要做什麼?

// check if user has selected a date range 
// If yes, add the where condition  
$query = "SELECT id, firstname, lastname, nums_ty "; 
$query .= "FROM table_name "; 
$query .= "WHERE nums_ty ='5' "; 

// Make sure both start and end dates are selected 
if(!empty($startDate) && !empty($endDate)) { 
    $query .= "AND date BETWEEN '$startDate' AND '$endDate' "; 
} 

$query .= "ORDER BY id DESC"; 

echo $query; 
0

默認情況下,您查詢的所有行,並顯示在你的餐桌, 我想你應該使用$ _POST或$ _GET PARAMS OK php isset(.. param)中的函數來評估表單中的日期是否已經發送,如果發生這種情況,您應該使用帶有日期標準的mysql查詢,然後解除結果s在你的桌上或其他什麼

我希望這可以幫助你一點點