Een andere database declareren

Om toegang te krijgen tot een andere database, moet SPIP over toegangscodes tot die database beschikken. Op het moment van schrijven worden de secundaire gedeclareerde databases correct verwerkt in de leesmodus. Het schrijven naar dergelijke databases wordt echter nog niet afgehandeld.

Voor het declareren van een andere database zijn er twee mogelijke oplossingen:

  • Gebruik hiervoor de standaard grafische interface (Configuratie > Siteonderhoud > Declareer een andere database).
  • Schrijf jouw eigen connectorbestand volgens de voor dat doel gedefinieerde syntaxis en sla het op in de config/ map (of de map gedefinieerd door de constante _DIR_CONNNECT).

Het connectorbestand config/xx.php

Voor een connectorbestand genaamd tarabiscote.php zou de inhoud zijn:

<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
define('_MYSQL_SET_SQL_MODE',true);
$GLOBALS['spip_connect_version'] = 0.7;
spip_connect_db('localhost','','gebruikers','wachtwoord','tarabiscote','mysql', 'spip','');
?>

Vervolgens zouden we de functie spip_connect_db() gebruiken met de volgende argumenten in deze volgorde:

  1. het adres van de SQL server
  2. het poortnummer, indien noodzakelijk
  3. de gebruikersnaam
  4. het wachtwoord
  5. de naam van de database
  6. het server type (mysql, pg, sqlite2, sqlite3...)
  7. de prefix van de tabel
  8. worden gebruikers via LDAP verbonden?

Auteur hanjo Gepubliceerd op: Aangepast: 12/03/23

Vertalingen: English, français, Nederlands