使用已进行JSON编码的sql查询填充下拉框

时间:2013-06-06 11:15:12

标签: php sql json loops drop-down-menu

好的,所以我认为这有点棘手。我有这个代码用来填充一个带有来自数据库字段的文本的下拉框(下面),但现在我必须更改它,以便代替下拉列表中的名称,我需要{“Fullname”:name(variable)} 。首先,这是我的初始代码:

<form name="ClientNameForm" id="ClientNameForm" action="ClientDetails.php" method="POST">
<input type="text" name="ClientName" id="ClientName" placeholder="Type Service User's name here:" style="width: 200px"/><br/><br/>
<select name="Name_dropdown" id="name_dropdown" style="width: 200px" >
    <?php
    $ClientName_Query= "SELECT CONCAT(FName, ' ', SName) AS FullName FROM ClientDetails";

    $ClientName_Result= mysql_query($ClientName_Query) or die (mysql_error());while ($row= mysql_fetch_array($ClientName_Result)){
        $Fullname=$row['FullName'];
        echo "<option> $Fullname </option>";

    }?>
</select>
<br/><br/>
<input type="submit" name="submit_btn" id="submit_btn" value="Submit"/>
</form>

到目前为止,我尝试改变这一点的做法不足以在我的下拉框中得到{“Fullname”:null}。以下是我的PHP,我之前解释的是我的目标:

<?php
    $ClientName_Query= "SELECT CONCAT(FName, ' ', SName) AS FullName FROM ClientDetails";

    $ClientName_Result= mysql_query($ClientName_Query) or die (mysql_error());$EmptyArray=array();  
    while ($row= mysql_fetch_array($ClientName_Result)){

        $FullName=$row['FullName'];
        $Queue= array('FullName' => $ClientName_Result);
        array_unshift($Empty_array, $Queue);$Json_Encoded= json_encode($Queue);


        echo "<option> $Json_Encoded </option>";

}?> 

我很困惑。所有帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

更改

$Queue= array('FullName' => $ClientName_Result);

$Queue= array('FullName' => $FullName);

并删除array_unshift($Empty_array, $Queue);