我現在還沒有設計一個網站大約3年,所以我很生氣至少可以說。我必須回到Dreamweaver CS5上來幫助我。 Right ...嘗試運行基於下拉列表結果的SELECT sql查詢。 mySQL php
我想要一個新聞頁面,用戶/客戶將從下拉菜單中選擇日期(JAN,FEB,MAR,APR等)。現在,我在我的桌子上mySQL數據庫被稱爲'news',其中每行都被這些日期引用。我已經爲日期設置了一個動態列表(一個下拉列表)。
我想要的是客戶從下拉列表中選擇日期,並將結果顯示在下面的Recordset中。我假設的SQL查詢需要被寫的線沿線的東西:
選擇日期,主題,郵件 從新聞 其中date = $ XXXXXDROPDOWNLIST XXX $
正如你所看到的,我做了最後排隊,因爲我不能完全掌握它應該如何運作。我在想,下拉列表需要在POST和結果表格需要以GET形式存在的表單中。
難道有人比我更技術請開導我的dillema?
謝謝,羅布。
代碼
mysql_select_db($database_rcc, $rcc);
$query_dropdowndate = "SELECT DATE_FORMAT(date, '%M %Y') AS FORMATTEDDATE FROM news GROUP BY FORMATTEDDATE ORDER BY Date DESC ";
$dropdowndate = mysql_query($query_dropdowndate, $rcc) or die(mysql_error());
$row_dropdowndate = mysql_fetch_assoc($dropdowndate);
$totalRows_dropdowndate = mysql_num_rows($dropdowndate);
mysql_select_db($database_rcc, $rcc);
$query_newsitems = "SELECT `Date`, Subject, Message FROM news WHERE date = $_POST['dropdowndate']";
$newsitems = mysql_query($query_newsitems, $rcc) or die(mysql_error());
$row_newsitems = mysql_fetch_assoc($newsitems);
$totalRows_newsitems = mysql_num_rows($newsitems);
?>
<form id="choosedate" name="choosedate" method="post" action="#">
<label for="dropdowndate"></label>
<select name="dropdowndate" id="dropdowndate">
<?php
do {
?>
<option value="<?php echo $row_dropdowndate['FORMATTEDDATE']?>"<?php if (!(strcmp($row_dropdowndate['FORMATTEDDATE'], $row_dropdowndate['FORMATTEDDATE']))) {echo "selected=\"selected\"";} ?>><?php echo $row_dropdowndate['FORMATTEDDATE']?></option>
<?php
} while ($row_dropdowndate = mysql_fetch_assoc($dropdowndate));
$rows = mysql_num_rows($dropdowndate);
if($rows > 0) {
mysql_data_seek($dropdowndate, 0);
$row_dropdowndate = mysql_fetch_assoc($dropdowndate);
}
?>
</select>
<input type="submit" name="submit" id="submit" value="Submit" />
</form>
<p> </p>
<form id="form1" name="form1" method="get" action="">
<table border="0" cellpadding="5" cellspacing="2">
<tr>
<td>Date</td>
<td>Subject</td>
<td>Message</td>
</tr>
<?php do { ?>
<tr>
<td><?php echo $row_newsitems['Date']; ?></td>
<td><?php echo $row_newsitems['Subject']; ?></td>
<td><?php echo $row_newsitems['Message']; ?></td>
</tr>
<?php } while ($row_newsitems = mysql_fetch_assoc($newsitems)); ?>
一些可能看起來很怪異,所以讓我解釋...動態列表(下拉列表)被稱爲「dropdowndate」和方式被稱爲「choosedate」有一個叫按鈕「提交'以提交表格。 FORMATTEDDATE是爲記錄集提供下拉菜單動態列表的名稱。
我想從用戶的POST時,該動態列表中的值插入到查詢中,如我所說... SELECT Date
,主題,消息從新聞WHERE date = $ _POST ['dropdowndate']「;(THIS BIT也許是錯誤的)
羅布
代碼請。這將是最好的使用$ _POST ['fieldname'] –
不要忘記驗證輸入或轉義它,請參閱mysqli_real_escape_string() – Andy