将数据库中的超链接添加到查询结果


Adding hyperlinks from database to query results

这类事情的新手。

本质上,我只希望返回的url值(见下文)显示为超链接。"url"是数据库中包含(显然)网站url的列的名称。

以前我会用这样的东西:

echo "<a href=".$row['url'].">".$row['url']."</a>";

但我不确定这个上下文中的语法。以下是代码片段:

 function createMarker(latlng, venuename, url, address, phone) {
      var html = "<b>" + venuename + 
      "</b> <br/>" + url +
      "</b> <br/>" + address + 
      "</b> <br/>" + phone;
      var marker = new google.maps.Marker({
        map: map,
        position: latlng
      });
      google.maps.event.addListener(marker, 'click', function() {
        infoWindow.setContent(html);
        infoWindow.open(map, marker);
      });
      markers.push(marker);
    }

谢谢。

你的意思是如何在php中传递一个数组,以便它为每个结果调用这个javascript函数,并使url成为链接?如果是这样的话,试试这样的东西:

在页脚中,在window.load函数中,或者在页面加载后以任何方式提供js:

<script type="text/javascript">
<?php foreach($db_array AS $row): ?>
    createMarker('<?php echo $row['latlng']; ?>', '<?php echo $row['venuename']; ?>', '<?php echo $row['url']; ?>', '<?php echo $row['address']; ?>', '<?php echo $row['phone']; ?>');
<?php endforeach; ?>
function createMarker(latlng, venuename, url, address, phone) {
          var html = "<b>" + venuename + 
          "</b> <br/><a href='"" + url + "'">" + url + "</a>" +
          "</b> <br/>" + address + 
          "</b> <br/>" + phone;
          var marker = new google.maps.Marker({
            map: map,
            position: latlng
          });
          google.maps.event.addListener(marker, 'click', function() {
            infoWindow.setContent(html);
            infoWindow.open(map, marker);
          });
          markers.push(marker);
        }
</script>

这假设您有一个名为$db_array的数据库结果数组,并且字段与js函数的名称匹配。很明显,您用实际值替换了这些值。

它们中的第一个是一个简单的php响应链接,后一个是用于创建google标记的javascript。你会想决定你想做什么。这只是一个链接吗?或者创建一个标记?

并且您有一些html元素在javascript中不匹配。

对于这个特定的输出,您可以在函数之前添加这个:

var url = <?php echo $row['url']; ?>

但我当然不知道你想如何循环它。