Skip to main content

GLPI Plugin Datenbank initialisieren

Einleitung

Wenn wir Daten in GLPI permanent machen wollen, müssen wir dies üüber Datenbanken realisieren. Da GLPI von Haus aus eine Datenbank benötigtbenötigt, wollen wir diese verwendenverwenden, um dort unsere Datei abzulegen.

hook.php

Um unsere Plugin Plugin-Datenbank zu initialisieren, müssen wir in der install Funktion ein paar Zeilen Code hinzufühinzufügen und diesen mit unserem SQL Befehl ausstatten. 

So könnte der Code aussehen.

<?php
    function plugin_debitors_install()
    {
        global $DB;
        
        $migrate = New Migration(100);

        //Überprüfen ob Tabelle existiert
        if(!$DB->tableExists('glpi_plugin_debitors_debitors'))
        {
            $query = "CREATE TABLE glpi_plugin_debitors_debitors (id INT, name VARCHAR(50))";

            $DB->queryOrDie($query, $DB->error());
        }

        $migrate->executeMigration();
        return true;
    }

  function plugin_debitors_uninstall() {
     global $DB;

     $tables = [
        'debitors'
     ];

     foreach ($tables as $table) {
        $tablename = 'glpi_plugin_debitors_' . $table;

        if ($DB->tableExists($tablename)) {
           $DB->queryOrDie(
              "DROP TABLE `$tablename`",
              $DB->error()
           );
        }
     }

     return true;
  }