如何将城市名称作为值而不是id返回?

时间:2017-08-14 09:13:27

标签: php html mysql

我刚刚写了一个城市名称的datalist代码,它将从给定的州ID中找到城市。但是在选择城市名称时,它也显示状态ID,在选择之后它只显示状态ID而不是显示城市名称。 这是代码。

  <?php
    echo '<input type="text" list="city" class="form-control" />
                <datalist id="city" >';
    $con = mysql_connect("localhost","root","");
    $db = mysql_select_db("placedb",$con);

    $query = mysql_query("SELECT * FROM `cities` WHERE state_id BETWEEN 1 AND 41 ORDER BY name ASC ") or die(mysql_error());

    $items = array();
    while ($row = mysql_fetch_array($query)) {
        $items[] = $row;
    } 

    foreach($items as $item){

        printf('<option id="city" value="%s">%s</option>', $item['id'], $item['name']);
    }
    echo '</datalist>';

    ?>

2 个答案:

答案 0 :(得分:0)

您必须使用$item['name']代替$item['id']

答案 1 :(得分:0)

我认为printf应该是

printf('<option id="city" value="%d">%s</option>', $item['id'], $item['name']);
相关问题