PHP Interbase/Firebird Datenbank auslesen und bearbeiten (Windows)

Gepostet am Januar 12, 2012

In meinem Falle hatte ich vor eine Datenbank von Amicron-Faktura, auf einem Windows-Rechner auszulesen. Diese Verwaltungssoftware speichert die Daten in einer Interbase/Firebird Datenbank (DATA.FDB).

1. Installieren Sie den aktuellen Firebird-Server von „firebirdsql.org“. Alle Optionen der Installationsdatei können wir in der Vorgabe belassen werden. Der Server muss auch gestartet sein, um die Daten auslesen zu können. Die Installation erstellt eine Datei „FBCLIENT.DLL“ unter „C:\Windows\system32\“, dazu später mehr.

2. Installieren Sie einen Apache Server. Ich habe XAMPP verwendet. Diesbezüglich habe ich auch eine Anleitung (XAMPP Insatllation)

3. Öffnen Sie die PHP.ini von XAMPP oder Ihrem Apache und entfernen Sie aus den folgenden 2 Zeilen das führende Semikolon:

1
2
;extension=php_interbase.dll
;php_pdo_firebird.dll

in

1
2
extension=php_interbase.dll
php_pdo_firebird.dll

4. Starten Sie den Apache Server neu

5. Um einen Überblick über alle Tabellen in der Datenbank zu bekommen, habe ich das Programm „SQL Manager Lite for InterBase and Firebird“ heruntergeladen und die DATA.FDB eingebunden. EIn sehr gutes Tool wie ich finde (30 Tage Testversion)
– Benutzername und Passwort war bei mir der Standard-Zugang (Benutzer: „SYSDBA“, Passwort: „masterkey“)
– Zuerst hat sich das Programm nicht verbunden, dazu muss man in der Dropdown-Auswahl „Client Library“ keine Datei Auswahlen, sondern „Datei öffnen Button, neben der Zeile) die Datei „C:\Windows\system32\FBCLIENT.DLL“ einbinden. Nun sieht man eine grafische Übersicht der Tabellen und Daten

6. Wie folgt kann man die Datenbank per PHP auslesen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Connection
$db = 'C:\xampp\htdocs\amicron\database\DATA.FDB';
$username='SYSDBA';
$password='masterkey';
 
$dbh = ibase_connect ( $db, $username, $password ) or die ("error in db connect");
 
$stmt='select ARTIKELNR from ADRESSEN';
$query = ibase_prepare($stmt);
 
if ($query = ibase_prepare($stmt)) {
 
	$rs=ibase_execute($query);
	$row = ibase_fetch_row($rs);
 
	print_r( $row);
 
	// free result
	ibase_free_query($query);
	ibase_free_result($rs);
 
}
 
// close db
ibase_close($dbh);

7. Zum auslesen und schreiben verwende ich eine DB-Klasse von „phpclasses.org“, dort müssen Sie sich registrieren und in der Suche „Interbase“ eingeben. Daraufhin bekommt man eine Liste mit sehr guten Klassen um die DB einfach auslesen zu können.

Tags: , , , ,

3 Antworten bis “PHP Interbase/Firebird Datenbank auslesen und bearbeiten (Windows)”

  1. Karsten
    Sep 06, 2012
    Reply

    danke!

    aber welche klasse hast du genau verwendet, ich komme genau dort nicht weiter.


  2. martin
    Okt 06, 2012
    Reply

    ich würde eher das hier empfehlen:

    http://adodb.sourceforge.net/

    das ist eine classe die es sehr einfach macht mit allen möglichen datenbanken zu verbinden.
    auch wenn man das nicht unbedingt benötigt ist es einfacher damit auf die daten zuzugreifen.



Leave a Reply

 

Posts of Current Category



Facebook: