AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi [PHP/Firebird] Zugriff
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP/Firebird] Zugriff

Ein Thema von MrSpock · begonnen am 26. Dez 2004 · letzter Beitrag vom 3. Jan 2005
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#11

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 08:01
Zitat von MrSpock:
Hallo Marcel,

ich habe bereits XAMPP 1.1.4 installiert und möchte natürlich nicht alles wieder runterwerfen. Welche Einstellungen muss ich denn nachträglich in der php.ini ändern, damit ich auf firebird zugreifen kann?
Es muss das PHP Modul php_interbase.so vorhanden sein. Liegt normalerweise im PHP Unterverzeichnis extensions.

Falls dies bei Dir nicht der Fall ist muß PHP neu kompilierert werden, siehe mein Beitrag oben. Du kannst das das configure Script mit dem Parameter --help aufrufen, um alle möglichen Parameter angezeigt zu bekommen. Für Dich dürfte der Parameter --with-interbase=/opt/firebird interessant sein.

Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#12

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 11:19
Hallo Marcel,

das hab ich schon befürchtet. Ich habe jetzt die Sourcen von php 4.3.10 (wäre php 5 sinnvoller?). Dann habe ich mir mal angeschaut, wie XAMPP PHP configuriert hat und habe einen entsprechenden configure Befehl generiert, bei dem ich /opt/interbase durch /opt/firebird ersetzt habe.

Der Configure Befehl sieht dann so aus:

Zitat:
configure --prefix=/opt/lampp --with-apxs2=/opt/lampp/bin/apxs --with-config-file-path=/opt/lampp/etc --with-mysql=/opt/lampp --disable-debug --enable-bcmath --enable-calendar --enable-ctype --enable-dbase --enable-discard-path --enable-exif --enable-filepro --enable-force-cgi-redirect --enable-ftp --enable-gd-imgstrttf --enable-gd-native-ttf --with-ttf --enable-magic-quotes --enable-memory-limit --enable-safe-mode --enable-shmop --enable-sigchild --enable-sysvsem --enable-sysvshm --enable-track-vars --enable-trans-sid --enable-versioning --enable-wddx --enable-yp --with-ftp --with-gdbm=/opt/lampp --with-jpeg-dir=/opt/lampp --with-png-dir=/opt/lampp --with-tiff-dir=/opt/lampp --with-freetype-dir=/opt/lampp --without-xpm --with-zlib=yes --with-zlib-dir=/opt/lampp --with-openssl=/opt/lampp --with-expat-dir=/opt/lampp --enable-xslt --with-xslt-sablot=/opt/lampp -with-ming=/opt/lampp --with-dom=/opt/lampp --with-ldap=/opt/lampp --with-ncurses=/opt/lampp --with-gd --with-imap-dir=/opt/lampp --with-imap-ssl --with-imap=/opt/lampp --with-gettext=/opt/lampp --with-mssql=/opt/lampp --with-interbase=/opt/firebird --with-mysql-sock=/opt/lampp/var/mysql/mysql.sock --with-oci8=shared --with-mcrypt=/opt/lampp --with-mhash=/opt/lampp --enable-sockets --enable-mbstring=all --with-curl=/opt/lampp --enable-mbregex --enable-zend-multibyte --with-zip=/opt/lampp --enable-exif --with-bz2=/opt/lampp
Der Befehl kann leider noch nicht ausgeführt werden, weil bison nicht installiert ist und ich meine CDs nicht mitgenommen habe.
Miniaturansicht angehängter Grafiken
firebirdverzeichnis2_900.jpg  
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#13

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 11:36
Laut Deinem Screenshot ist PHP mit Interbase Support compiliert worden. Wahrscheinlich fehlt nur der Zugriff auf die Shared Library.

Schau mal nach, ob Du unter /usr/lib den Link libgds.so auf /opt/firebird/lib/libfbclient.so hast. Falls nicht leg mal einen an und starte den Webserver dann einmal neu.

Es schadet auch nicht /opt/firebird/bin in den Suchpfad aufzunehmen, z.b. über /etc/profile.

Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#14

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 11:58
Hallo Marcel,

der Link libgds.so existiert, aber er zeigt auf /opt/firebird/lib/libfbembed.so.

Den Pfad habe ich mal hinzugefügt.

[zusatz]
Habe den Link einmal umgebogen. Hat aber auch nicht funktioniert.
Im ursprünglichen configure wurde interbase ja mit dem Pfad /opt/interbase konfiguriert. Ich benötige aber /opt/firebird. Wo muss ich diesen Pfad denn manuell umstellen?
[/zusatz]
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#15

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 12:19
Änder mal den Link, so verwendest Du ja nur den Embedded Server und kannst nur auf lokale Dateien zugreifen. Damit dürfte folgender Code aus Deinem PHP Skript auch nicht funktionieren:

Code:
$host = 'localhost:/opt/firebird/examples/employee.fdb';
Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#16

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 12:25
Hallo Marcel,

ich hatte es gerade noch oben eingefügt, aber es hat sich mit deinem Posting überschnitten.

Habe den Link einmal umgebogen. Hat aber auch nicht funktioniert.
Im ursprünglichen configure wurde interbase ja mit dem Pfad /opt/interbase konfiguriert. Ich benötige aber /opt/firebird. Wo muss ich diesen Pfad denn manuell umstellen?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#17

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 12:42
Zitat von MrSpock:
Hallo Marcel,
Habe den Link einmal umgebogen. Hat aber auch nicht funktioniert.
Im ursprünglichen configure wurde interbase ja mit dem Pfad /opt/interbase konfiguriert. Ich benötige aber /opt/firebird. Wo muss ich diesen Pfad denn manuell umstellen?
Die Angabe bezieht sich nur darauf wo das Build-Script von PHP beim Compilieren die Headerdateien von Firebird findet. Zur Laufzeit ist das uninteressant.

So sehen bei mir die Links aus:

Code:
In /usr/lib:
lrwxrwxrwx 1 root root 37 Dec 22 09:57 /usr/lib/libfbclient.so -> ../../opt/firebird/lib/libfbclient.so*
lrwxrwxrwx 1 root root 39 Dec 22 09:57 /usr/lib/libfbclient.so.1 -> ../../opt/firebird/lib/libfbclient.so.1*
lrwxrwxrwx 1 root root 43 Dec 22 09:57 /usr/lib/libfbclient.so.1.5.1 -> ../../opt/firebird/lib/libfbclient.so.1.5.1*
lrwxrwxrwx 1 root root 32 Dec 22 09:57 /usr/lib/libgds.so -> /opt/firebird/lib/libfbclient.so*
lrwxrwxrwx 1 root root 32 Dec 22 09:57 /usr/lib/libgds.so.0 -> /opt/firebird/lib/libfbclient.so*

In /opt/firebird/lib:
lrwxrwxrwx  1 root    root        16 Dec 22 09:57 libfbclient.so -> libfbclient.so.1*
lrwxrwxrwx  1 root    root        20 Dec 22 09:57 libfbclient.so.1 -> libfbclient.so.1.5.1*
-r-xr-xr-x  1 firebird firebird 505592 Jul 14 18:33 libfbclient.so.1.5.1*
-r-xr-xr-x  1 firebird firebird  3300 Jul 14 18:33 libib_util.so*
Ähm, der Firebird Server läuft auch

Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#18

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 19:27
Hallo Marcel,

Zitat:
Ähm, der Firebird Server läuft auch
Ja. Ich kann über isql und über Kylix mit FibPlus Komponenten auf dieselbe Tabelle zugreifen. Nur PHP weigert sich standhaft.

Ich habe jetzt auch noch:

/usr/lib/libgds.so.0 -> /opt/firebird/lib/libfbclient.so

gesetzt. Der Link hat auch noch auf die embedded Lib gezeigt.Alle anderen Links verweisen auf dieselben Verzeichnisse wie bei dir.

Leider funktioniert das alles nicht. Ich habe aber wie gesagt keine interbase.so oder php_interbase.so auf meinem Rechner. Muss ich denn tatsächlich in der php.ini die extension für interbase aktivieren? Ich habe einmal alle libs durchsucht und in der Bibliothek libphp4.so kommt zumindest der String "interbase" vor. Das könnte ja heißen, dass interbase dort integriert ist und deshalb die Extension nicht aktiviert werden muss!?

Hast du noch eine Idee, was ich mal testen könnte?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#19

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 19:56
Zitat von MrSpock:
Leider funktioniert das alles nicht. Ich habe aber wie gesagt keine interbase.so oder php_interbase.so auf meinem Rechner. Muss ich denn tatsächlich in der php.ini die extension für interbase aktivieren? Ich habe einmal alle libs durchsucht und in der Bibliothek libphp4.so kommt zumindest der String "interbase" vor. Das könnte ja heißen, dass interbase dort integriert ist und deshalb die Extension nicht aktiviert werden muss!?
Sieht mir auch danach aus das die Module statisch gelinkt sind. Hmm, versucht mal so einen Connect zu machen:

Code:
<?php
$conn = ibase_connect('127.0.0.1:/opt/firebird/examples/employee.fdb','SYSDBA','masterkey','ISO8859_1',0,3);
$result = ibase_query($conn,'select * from country');
while($row = ibase_fetch_object($result)) {
  echo $row->COUNTRY."\n";
}
ibase_close($conn);
?>
Und schreib dann nochmal welche Fehlermeldung Du jetzt bekommst.

Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#20

Re: [PHP/Firebird] Zugriff

  Alt 29. Dez 2004, 20:04
Hallo Marcel,

die Fehlermeldung ist auch so dieselbe:

Zitat:
Warning: ibase_connect(): Connection lost to pipe server operating system directive stat failed No such file or directory in /opt/lampp/htdocs/fbtest.php on line 7

Warning: ibase_query(): no InterBase link resource supplied in /opt/lampp/htdocs/fbtest.php on line 8

Warning: ibase_fetch_object(): supplied argument is not a valid InterBase result resource in /opt/lampp/htdocs/fbtest.php on line 9

Warning: ibase_close(): 0 is not a valid InterBase link resource in /opt/lampp/htdocs/fbtest.php on line 12
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz