2012-02-10 66 views
0

我從我的數據庫中獲得以下表單,其中包含2011年第1周至第20周以及2012年當前第1周的數據庫。我希望我的用戶先選擇2011,然後再打電話給本週以選擇例如他們不會選擇例如第10周和2012年(尚不可用)。任何幫助最受歡迎。用php搜索表單

<form name="myform" action="http://www.website.com/displaybook.php" method="get"> 
    <select size="1" name="d"> 
    <? 
    $sql=mysql_query("SELECT DISTINCT (Week) FROM data ORDER BY Week ASC"); 
    while($row = mysql_fetch_array($sql)) 
    { 

    echo "<option value='". $row['Week']."'>Week - ". $row['Week']."</option>"; 

     } 

    ?> 
    </select> 

    <select size="1" name="y"> 
    <? 
    $sql=mysql_query("SELECT DISTINCT (Year) FROM data ORDER BY Year Desc"); 
    while($row = mysql_fetch_array($sql)) 
    { 

    echo "<option value='". $row['Year']."'>Season - ". $row['Year']."</option>"; 

     } 

    ?> 

    </select> 
    <input type="submit" value="Get data"> 
    </form> 
+0

你需要使用一些Javascript來完成這件事。 – 2012-02-11 05:15:35

回答

0

您需要把year選擇day選擇...,機器會自動ajust的GET串......然後,創建一個小的JavaScript,使第二選擇第一選擇時,像這樣的:

<script type="text/javascript"> 
function getWeek() 
{ 
    if (document.getElementById('y').value != '') 
    { 
     document.getElementById('d').disabled = ''; // this will enable the select 
    } 
} 
</script> 

而在你的HTML:

<form name="myform" action="http://www.website.com/displaybook.php" method="get"> 
<select size="1" name="y" onchange="getWeek()"> 
<? 
$sql=mysql_query("SELECT DISTINCT (Year) FROM data ORDER BY Year Desc"); 
while($row = mysql_fetch_array($sql)) 
{ 
    echo "<option value='". $row['Year']."'>Season - ". $row['Year']."</option>"; 
} 

?> 
</select> 
<select size="1" name="d" id="d" disabled="disabled"> 
<? 
$sql=mysql_query("SELECT DISTINCT (Week) FROM data ORDER BY Week ASC"); 
while($row = mysql_fetch_array($sql)) 
{ 
    echo "<option value='". $row['Week']."'>Week - ". $row['Week']."</option>"; 
} 
?> 
</select> 
<input type="submit" value="Get data"> 
</form> 

像這樣的東西應該工作太棒了!

+0

嗨,當選擇2011年或2012年它不會呼叫一週 – meandme 2012-02-12 09:56:31

+0

發現你忘記在第2行添加id =「y」。但仍然當我選擇2012年我確實得到一週選擇第20周,例如尚不可用 – meandme 2012-02-12 10:12:17

+0

因此你讓用戶選擇一個存在並且已通過或是最新的一週? – 2012-02-12 14:41:17