Qlik Sense Блог

PHP: Запись данных из скрипта Qlik Sense в MySQL

Привет!

В этой статье я приведу пример PHP скрипта, который можно использовать для записи данных (каких то параметров) в базу данных MySQL.

<?php

 //Получаем переменные из URL запроса
 if (isset($_GET['field1']) and isset($_GET['field2']) and isset($_GET['field3'])) {
  $field1  = htmlspecialchars($_GET["field1"]);
  $field2  = htmlspecialchars($_GET["field2"]);
  $field3  = htmlspecialchars($_GET["field3"]);
 }
 else {
  err();
 }                                             

 // Задаем коннекшн
 mysql_connect('ip_server_adress', 'login', 'password');
 //Устанавливаем несколько кодировок, иногда чего-то нехватает, лучше перестраховаться множеством установок
 mysql_query("set collation_connection = 'utf8_general_ci'");
 mysql_query("set character_set_client='utf8'");
 mysql_query("set character_set_results='utf8'");
 mysql_query("set character_set_system='utf8'");
 mysql_query('SET names=utf8');
 mysql_select_db('database_name');

 header('Content-Type: text/csv; charset=utf-8');
 header('Content-Disposition: attachment; filename=result.txt');
 $result = mysql_query(
      "INSERT INTO `mysql_table_name` (`field1`, `field2`, `field3`) 
      VALUES ('".$field1."', '".$field2."', '".$field3."')"
     );
 
 // создаем указатель файла, подключенный к выходному потоку
 $output = fopen('php://output', 'w');

 fwrite($output, "result\r\n");

 if($result){

  fputs($output, "ok");
 }
 else {
  fputs($output, "not ok");
 };

?>

Для того, чтобы вызвать php-скрипт, его необходимо разместить на сайте или IIS сервере. Вызов из скрипта Qlik Sense осуществляется следующим образом:

MySQL_Temp_Insert_Information:
LOAD result As MySQL_Temp_Insert_Information
FROM
[http://iis-server-website.ru/mysql/insert_info.php?field1=$(vField1)&field2=$(vField2)&field3=$(vField3)]
(txt, codepage is 1251, embedded labels, delimiter is '\t', msq);

DROP TABLE MySQL_Temp_Insert_Information;

Замечание: в URL адресе не должно быть пробелов, иначе QlikView или Qlik Sense выдаст ошибку. Не знаю почему такое происходит.

0 0 голосов
Рейтинг статьи
qliksense-expert

Recent Posts

Доступ к системным данным и переменным в Extension Qlik Sense

Введение Иногда при создании расширения Qlik Sense вам необходимо получить доступ к системным данным. Это…

3 года ago

Как собрать с помощью PowerShell информацию по всем QVD из всех директорий?

// Команда, которая будет запускаться в Powershell на сервере LET vPowershellCommand = 'Get-ChildItem -Path ''lib://Data/QVDs''…

3 года ago

Как построить диаграмму Control Chart со скользящим средним в Qlik Sense?

Как построить диаграмму Control Chart со скользящим средним в Qlik Sense? В этой статье будет…

3 года ago

Как сделать чередование цвета в строках прямой таблицы Qlik Sense?

Как сделать чередование цвета в строках прямой таблицы Qlik Sense? Если порядок строк неважен, то…

3 года ago

Как создать Qlik Sense Extension с помощью Nebula.js и React

Обзор В этой серии руководств мы собираемся создать расширение Qlik Sense с использованием Nebula.js и…

3 года ago

Создание Extension с помощью qlik nebula.js и D3.js – Tutorial

Создание расширенного расширения визуализации с использованием Qlik Nebula.js и D3.js   В моем последнем посте я рассказал…

3 года ago

This website uses cookies.