Сообщение: модуль 'imagick' уже загружен - PullRequest
0 голосов
/ 12 июня 2018

Я пытаюсь реализовать пользовательский php-запрос в codeigniter.но я получаю эту ошибку "Imagick".Вот пользовательский код php, который работает идеально

$query = sprintf("SELECT id , address, name, lat, lng , planted ,
( 3959 * acos( cos( radians('%s') ) * cos( radians( lat ) ) * 
  cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) * 
  sin( radians( lat ) ) ) ) AS distance FROM plant 
  HAVING distance < '%s' AND planted is %s ORDER BY distance 
  LIMIT 0 , 10", 
  mysqli_real_escape_string($connection, $center_lat), 
  mysqli_real_escape_string($connection, $center_lng), 
  mysqli_real_escape_string($connection, $center_lat), 
  mysqli_real_escape_string($connection, $radius), 
  mysqli_real_escape_string($connection, $planted)); 

 $result = mysqli_query($connection,$query);

Вот код кода, который я написал

  $query = "SELECT id, name, lat, lon, 
    (3959 * acos( cos( radians($lat) ) * cos( radians( lat ) ) * 
    cos( radians( lon ) - radians($lon) ) + sin( radians($lat) ) * 
    sin( radians( lat ) ) ) ) AS radius FROM users 
    HAVING radius < $radius ORDER BY radius";

    $query = $this->db->query($query);

Эта ошибка возникает только для этого запроса.Пожалуйста помоги.

Снимок экрана: Экран ошибки

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

imagick - это пакет для обработки и создания изображений , являющийся частью PHP.

По умолчанию он не используется CodeIgniter, хотя может использоваться Класс манипулирования изображениями , если разработчик явно выбирает его.

Imagick - это динамическое расширение PHP.Обычно он загружается в php.ini, но PHP позволяет загружать модули во время выполнения с помощью функции dl().CodeIgniter никогда не использует dl() для загрузки imagick.

Я не вижу очевидного использования манипуляций с изображениями в запросе.Сообщение об ошибке ничего не говорит о базе данных.

Исходя из этих фактов, код, который выполняется до или после запроса, вызывает ошибку.

0 голосов
/ 12 июня 2018

Проверьте ваш файл php.ini, возможно, есть две extension=imagick.so строки.Если да, то вы должны прокомментировать один из этих

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...