根据数据库中的值更改标记颜色

时间:2019-02-13 16:17:14

标签: php database google-maps google-maps-markers marker

我有一张地图,我想在其中放入标记。根据数据库列的值,我想更改标记的颜色。我已经尝试过,但是有错误。有人知道怎么做吗?

var green='http://maps.google.com/mapfiles/ms/icons/green-dot.png';
        var yellow='http://maps.google.com/mapfiles/ms/icons/yellow-dot.png';
        var orange='http://maps.google.com/mapfiles/ms/icons/orangedot.png';
        var red='http://maps.google.com/mapfiles/ms/icons/red-dot.png';
    for( i = 0; i < markers.length; i++ ) {
        var position = new google.maps.LatLng(markers[i][1], markers[i][2]);

            <?php if($result->num_rows > 0){
            while($row = $result->fetch_assoc()){
                $value=$row['RSRP'];
            }
        }

            if($value>-90){$icon="green";}
            else if($value<=-90 && $value>=-106){$icon="yellow";}
            else if($value<=-107 && $value>=-120){$icon="orange";}
            else if($value<-120){$icon="red";}
             ?>
        bounds.extend(position);
        marker = new google.maps.Marker({
            position: position,
            map: map,
            title: markers[i][0],
            icon:yellow
        });
}

1 个答案:

答案 0 :(得分:1)

您好,请使用foreach循环,并检查该值是否设置了示例:

foreach ($sqlResult as $key => $value) {
        if (isset($value)) {
        if($value["color"] > 90){
        $icon ="green";  
        }
    }
}

其中“颜色”是要获取值的列的名称 希望对您有帮助。