googlemaps codeigniter не отображается в представлении - PullRequest
0 голосов
/ 26 апреля 2018

У меня проблема с отображением карт на моем сайте codeigniter.Я использую библиотеку googlemaps.php, и мой контроллер и вид выглядят так:

Контроллер:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Maps extends My_Controller {

public function __construct(){
    parent::__construct();
    $this->load->model('Maps');

}

public function maps(){
    $this->load->library('googlemaps');
    $mapmarkers = $this->Maps->find(); //From here get lan. lat. 

    foreach($mapmarkers as $m){
        $marker = array();
        $marker['position'] = $m['location'];
        $content = "My Information";
        $marker['infowindow_content'] = $content ;
        $this->googlemaps->add_marker($marker);
    }

    $data['map'] = $this->googlemaps->create_map();
    //var_dump($data);
    $this->load_theme('maps', $data);
}
}

Вид:

<div class="map-content content-area container-fluid">
<div class="col-lg-12">
    <div class="row">
        <?php echo $map['js']; ?>
        <?php echo $map['html']; ?>
    </div>
</div>

Результатом является пустая страница, но когда я вывожу переменную map, она показывает правильные данные.У меня также нет ошибок в консоли.

журнал var_dump:

array(1) { ["map"]=> array(3) { ["js"]=> string(1439) " " ["html"]=> string(61) "
 " ["markers"]=> array(1) { ["marker_0"]=> array(2) { ["latitude"]=> 
 string(17) "48.28866326125372" ["longitude"]=> string(17) 
 "16.37960056416341" } } } } 

Может кто-нибудь сказать мне, что не так с моим кодом, или как я могу это исправить

1 Ответ

0 голосов
/ 26 апреля 2018

Вы не initialize библиотека, обновите вашу функцию следующим образом

public function maps(){
    $this->load->library('googlemaps');
    $this->googlemaps->initialize();

    $mapmarkers = $this->Maps->find(); //From here get lan. lat. 
    foreach($mapmarkers as $m){
        $marker = array();
        $marker['position'] = $m['location'];
        $marker['infowindow_content'] = 'My Information';
        $this->googlemaps->add_marker($marker);
    }

    $data['map'] = $this->googlemaps->create_map();
    //var_dump($data);
    $this->load_theme('maps', $data);
}

HTML

<head>
<?=$map['js'];?>
</head>

<body>
<?=$map['html'];?>
</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...