簡體   English   中英

如何從下拉列表中選擇值,如何從另一個表中獲取相應的值,然后將其放入另一個下拉列表中?

[英]How to select value from a drop-down list, get the corresponding values from another table, then put those into another drop-down list?

好的,這是一個數據庫。

http://i.stack.imgur.com/j05AB.png

假設我已將這些表中的每個表的值插入數據庫中,盡管ID會自動遞增。 每個AVALUE中都有許多BVALUE,因此是AB表。 我在下拉列表中具有表A的所有AVALUE。 用戶選擇一個AVALUE,我使用

$AVALUE = $_POST['AVALUE']

然后,我執行一條sql語句從表A中獲取等於$ AVALUE的AVALUE。

$sql = "SELECT AVALUE FROM TABLEA WHERE" . $AVALUE . " = AVALUE";

然后,我如何從TABLEA中獲得該AVALUE的NAMEID,然后從TABLEA中引用AB,其中TABLEANAMEID = NAMEID? 然后,我想通過獲取與TABLEANAMEID對應的所有TABLEBNAMEID來獲取所有BVALUES。

然后,我希望這些BVALUES在單獨的HTML頁面上的下拉列表中。 經過一番谷歌搜索的解決方案后,我認為將進行某種循環,將BVALUES放入變量中,因為表B中的所有NAMEID都會遞增,其中變量將在$ BVALUE循環中,並且列表值將與所有變量一起顯示BVALUES。

我希望我能解釋正確。 我想我知道我要做什么,但我不知道如何實際實施。 請幫助大家。

您需要將這些表連接在一起。 您要描述的是一個m:n關系。 在這種情況下,您必須使用2個這樣的聯接:

SELECT * FROM TableA AS a WHERE a.avalue = $AVALUE
JOIN TableAB AS a2b ON a.namevalue = a2b.id_a
JOIN TableB AS b ON a2b.id_b = b.id

也許您的意思是,您想獲取與表AB中的所選AVALUE相關的所有BVALUE

$sql = "SELECT B.NAMEID as id, BVALUE as value FROM TABLEA A
        LEFT JOIN AB ON TABLEANAMEID=A.NAMEID
        LEFT JOIN TABLEB B ON TABLEBNAMEID=B.NAMEID
        WHERE AVALUE = $AVALUE";`

獲取mysql結果

$result = mysql_query($sql);

重復

echo "<select>";
foreach ($r = mysql_fetch_object($result)) {
   echo '<option value="'.$r->id.'">'.$r->value.'</option>';
}
echo "</select>";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM