在mysqli中编辑记录时,在下拉列表中显示先前选择的值

时间:2017-06-29 02:04:34

标签: php html mysqli drop-down-menu

我继承了一个小页面,允许用户输入重定位请求,然后返回并编辑它们。

添加页面有许多下拉框,但编辑页面只是将它们显示为文本字段。如果您需要在编辑页面中选择其他值,则需要从下拉框中了解所有值。

我正试图想出一种方法,在编辑页面的下拉框中显示上一个选定值,以便在需要时轻松允许某人更改值。

我使用'selected'方法看到了其他一些问题和答案,但我无法将其与我正在查看的代码联系起来。我不是php的专家,在这里使用示例和解决方案来使事情有效。在这种情况下,我不能把它放在一起。

感谢任何帮助。

由于

<?php
$resultNames = $conn->query("SELECT txtCraftGroup FROM tblCraftGroup Order 
by txtCraftGroup");
if($resultNames) {
?>
<tr>
<td>Craft: </td>
<td><select name="craft">
<option value="0">Please Select</option>
<?php
while ($MCraft = $resultNames->fetch_assoc()) {
  echo "<option value=\"{$MCraft['txtCraftGroup']}\">";
  echo $MCraft['txtCraftGroup'];
  echo "</option>";
}

}else{
?>
<td>Craft: </td>
<td><input type="text" name="craft" value="<?php echo $MCraft; ?>"/><br/>
</td>
<?php
  }
  ?>
  </select><td>
  </tr>

2 个答案:

答案 0 :(得分:0)

To display the selected option in dropdown


<td><select name="craft">
<?php
while ($MCraft = $resultNames->fetch_assoc()) 
{  ?>
         <option value="<?php echo $MCraft['txtCraftGroup'] ;?>" 

          <?php if ($MCraft['txtCraftGroup']==$craftval) echo 'selected = "selected"'; ?> >

         <?php echo $MCraft['txtCraftGroup']; ?></option>
  <?php
    } 

?>        

</select> </td>

例如

<td><select name="gender">
<?php
while ($row = $resultNames->fetch_assoc()) 
{    ?>

    <option value="male" 
    <?php if ($row['gender']=="male")  echo 'selected = "selected" '; ?> >
      Male
    </option>
    <option value="female" 
                 <?php if ($row['gender']=="female")  echo 'selected = "selected" '; ?> >
    Female
    </option>
    <?php

 } 

?>        
        </select> </td>

答案 1 :(得分:0)

工作代码:

您可以使用所选选项。 假设您有两种形式:   添加表单。   更新表格。 首先通过GET方法在url中发布值,以便您可以访问另一个页面中的字段值。

function createMarkers(locations, infowindow) {

    // Create the listener function
    var markerClickListener = function(marker, infowindow) {
        return function() {
            getVenueDetails(marker.position, marker.city, marker.title, function(windowContent) {
                infowindow.setContent(windowContent);
                infowindow.open(map, marker);
            });
        };
    };


    // create an array of markers from Model data
    for (var i = 0; i < locations.length; i++) {
        // Get the position from the location array.
        var position = locations[i].location;
        var title = locations[i].title;
        // Create a marker per location
        var marker = new google.maps.Marker({
            map: map,
            position: position,
            title: title,
            address: locations[i].address,
            city: locations[i].city,
            url: locations[i].url,
            animation: google.maps.Animation.DROP
        });

        // Push the marker.
        markers.push(marker);

        //Pass The function declared above
        google.maps.event.addListener(marker, 'click', markerClickListener(marker, infowindow));

        bounds.extend(position);

    }
    // Extend the boundaries of the map for each marker
    map.fitBounds(bounds);
}