Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将数据库/表数据转换为文件名?_Javascript_Php_Html_Ajax - Fatal编程技术网

Javascript 如何将数据库/表数据转换为文件名?

Javascript 如何将数据库/表数据转换为文件名?,javascript,php,html,ajax,Javascript,Php,Html,Ajax,大家好,我只是想问一些关于传单标记的事情 我有一个数据库和一个表,其中有一个字段名为icon_name,看起来像这样 |icon_name| ___________ |FIRE | |HOMICIDE | |RAINSTORM| Folder Name: Legends Files Inside: FIRE.jpg HOMICIDE.jpg RAINSTORM.jpg 我还有一个名为Legends的文件夹,它有一个类似这样的文件 |icon_name| ___________ |F

大家好,我只是想问一些关于传单标记的事情

我有一个数据库和一个表,其中有一个字段名为icon_name,看起来像这样

|icon_name|
___________
|FIRE     |
|HOMICIDE |
|RAINSTORM|
Folder Name: Legends
Files Inside:

FIRE.jpg
HOMICIDE.jpg
RAINSTORM.jpg
我还有一个名为Legends的文件夹,它有一个类似这样的文件

|icon_name|
___________
|FIRE     |
|HOMICIDE |
|RAINSTORM|
Folder Name: Legends
Files Inside:

FIRE.jpg
HOMICIDE.jpg
RAINSTORM.jpg
正如您所看到的,jpg文件的名称在我的表图标\u名称中是相同的

下面的代码调用文件夹中的特定图像,并在将其放入地图之前将其用作传单标记图像注意:以下代码正在将标记信息从数据库生成到地图中

    var Icon1 = L.icon({ //<---Assigning a name of an image into a Leaflet Icon.
        iconUrl: 'legends/FIRE.jpg',//<--- Image Folder Location + the Image Name
        iconSize: [50, 50], //<--- Size of the image converted as icon
        iconAnchor:   [23, 50], //<--- Icons Anchor
        popupAnchor:  [3, -50] //<--- Leaflet Pop up

function getInfo() { 
    $.getJSON("get_info.php", function (data) { 
      for (var i = 0; i < data.length; i++) { 
        var location = new L.LatLng(data[i].lat, data[i].lng); 
        var marker = new L.Marker(location,{icon:Icon1}); 
           marker.bindPopup(
              data[i].name + "<br>" + 
              data[i].user_date + "<br>" + 
              data[i].user_time + "<br>" + 
              data[i].address + "<br>"
           ).addTo(map);
           marker.on('click', function(e) { // HERE YOU GO
                var ll = marker.getLatLng();
document.querySelector('#userLat1').value = ll.lat;
document.querySelector('#userLng1').value = ll.lng;
alert('You have selected a Marker that will be deleted'); 

           });
         } 
    }); 
  } 
这样输出的将是具有不同标记的不同标记图像。我希望你能理解我。泰

根据我给出的答案,这是我的测试代码,但它不工作

部分守则

    for (var i = 0; i < data.length; i++) { 
            var location = new L.LatLng(data[i].lat, data[i].lng); 
         var Icon1 = L.icon({
               iconUrl: 'legends/FIRE.jpg',
               marker.bindPopup(
                  data[i].name + "<br>" + 
                  data[i].user_date + "<br>" + 
                  data[i].user_time + "<br>" + 
                  data[i].address + "<br>"
               ).addTo(map);

我不知道你在哪里设置IconURL,但是沿着这条线应该可以做到

var marker = data[i].marker;
var url = "legends/" + marker + ".jpg";

你的get_info.php文件是什么样子的?先生,我的get_info.php只是一个php文件,由我表格中的select命令代码组成,因为我需要调用select命令才能将其转换为传单函数。先生,请参阅我编辑的帖子。我在我的代码旁边放了一些注释,这样你就可以更多地查看它了。Icon1=L。Icon表示im指定我的标记名为Icon1,IconUrl为图像名及其位置。那么我应该把你的答案放在哪里呢,先生。从它看起来的样子来看,把它放在从php文件检索信息的函数中。先生,这是我第一次编写这种代码,所以对此我非常抱歉。顺便说一句,请看我编辑的帖子,在它的底部是我的代码的一部分,有你的代码,它不工作,请帮助我这个。你可以用我的底部代码的编辑部分编辑你的答案。我的编辑代码位于我的文章的底部,也包括你的代码。