Andi: PHP und UnixODBC auf Apache 2.0 und PHP 4.3.0

Hi Forum!

Ich habe das Problem, dass ich von einem Webserver mit Suse 9.1, Apache 2 und PHP 4.3 auf eine IBM AS/400-Datenbank zugreifen muss.
Die notwendigen Treiber für die AS 400 habe ich bereits installiert, nun möchte ich nur noch PHP so konfigurieren, dass mir dort die ODBC-Funktionen, wie z.B. odbc_connect() zur Verfügung stehen.
Problem: das alles sollte ohne Neucompilierung des ganzen von statten gehen.

Was muss ich machen, um diese unixODBC manuell einzubinden (als shared module??). Hat das jemand schon mal gemacht?

Danke!

Andi

  1. Hallo,

    Suse 9.1
    Apache 2
    PHP 4.3

    Problem: das alles sollte ohne Neucompilierung des ganzen von statten gehen.

    entschuldige, aber allein nur von den benannten Eckdaten erachte ich ein Neucompilieren als dringend geboten.

    Lade Dir PHP 5.1.2 Apache 2.2 herunter und baue sie nach Deinen eigenen Bedürfnissen. (Prinzipiell ist es möglich Module separat zu bauen nur in Deinem Fall sehe ich da ohne weitere Angaben erstmal schwarz, weil ich davon ausgehe, daß die bestehenden Installation via yast aufgesetzt wurde.)

    Gruß aus Berlin!
    eddi

    1. Hi Eddi!

      entschuldige, aber allein nur von den benannten Eckdaten erachte ich ein Neucompilieren als dringend geboten.

      Lade Dir PHP 5.1.2 Apache 2.2 herunter und baue sie nach Deinen eigenen Bedürfnissen. (Prinzipiell ist es möglich Module separat zu bauen nur in Deinem Fall sehe ich da ohne weitere Angaben erstmal schwarz, weil ich davon ausgehe, daß die bestehenden Installation via yast aufgesetzt wurde.)

      es handelt sich hierbei um eine XAMPP-Installation ;-) deshalb ist eben eine neue Compilierung leider nicht so einfach. Des Weiteren läuft die auf mehreren Webservern, die im produktiven Einsatz stehen und nicht mal kurz vom Netz genommen werden und neu aufgesetzt werden können.

      Deshalb wäre diese Möglichkeit nicht so unpraktisch. Irgendwie muss das Configure-Skript ja auch diese Einstellungen in PHP vornehmen, und Module manuell einzubinden, geht ja auch (irgendwie).

      Andi

      1. Re:

        es handelt sich hierbei um eine XAMPP-Installation ;-) deshalb ist eben eine neue Compilierung leider nicht so einfach. Des Weiteren läuft die auf mehreren Webservern, die im produktiven Einsatz stehen und nicht mal kurz vom Netz genommen werden und neu aufgesetzt werden können.

        Weder müssen diese Server während des Compilierens, noch während des Konfigurierens "vom Netz genommen werden". Also ist das kein Argument!

        Irgendwie muss das Configure-Skript ja auch diese Einstellungen in PHP vornehmen, und Module manuell einzubinden, geht ja auch (irgendwie).

        configure ist ein Shell-Skript. Lies es Dir durch und schreibe es um.

        PHP bietet für gewöhnlich zwei kleine Scripts an ("phpize" und "php-config"). Diese sind im bin-Verzeichnis des Interpreters und müssen nur im Verzeichnis der entsprechenden Sourcen ausgeführt werden. Danach kann das so erstellt configure-Script aufgerufen werden und installiert werden. Nur - ich bezweifle, daß XAMPP diese beiden Scripte auch produziert hat und die Versionsnummern der Software flehen Dich doch schon von alleine nach einem Update an ;)

        Gruß aus Berlin!
        eddi

        1. So, ich habe es hingekriegt.

          1. ftp://rpmfind.net/linux/contrib/libc6/i386/php-odbc-4.2.2-17.2.2.i386.rpm
           diese datei runter laden und via rpm -ivh -nodeps %dateiname% installieren. den parameter -nodeps optional verwenden.
          2. anschließend in die php.ini folgende zeile aufnehmen:
            extension="odbc.so"
            und apache neu starten.

          3. sollte er sich beschweren, dass er die datei nicht findet, dann muss man sie einfach in das verzeichnis der php-extensions kopieren (bei mir kam das richtige Verzeichnis gleich in der Fehlermeldung). anschließend bei bedarf noch mal neu starten und dann gings.

          Viel Glück dem, der sich auch mal mit dem Problem rumärgern darf.