Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PHP unter Apache Webserver für Oracle

Empfohlene Antworten

Veröffentlicht

unten dran die config meines server und die fehlermeldung!

hat jemand dazu eine idee?

wäre sehr dankbar!

config von PHP.ini:

; Directory in which the loadable extensions (modules) reside.

extension_dir = "D:\oracle\PHP4\extensions\"

extension=php_oci8.dll - auskommentiert

Folgender Fehler tritt auf:

-------------------------------------------------------------------------------------------

Der Prozedureinsprungpunkt "OCILobFreeTemporary" wurde in der DLL "OCI.dll" nicht gefunden.

-------------------------------------------------------------------------------------------

Unable to load dynamic library 'D:\oracle\PHP4\extensions\php_oci8.dll"

- Die angegebene Prozedur wurde nicht gefunden.

-------------------------------------------------------------------------------------------

X-Powered-By: PHP/4.2.1 Content-type: text/html

Fatal error: Call to undefined function: ocinlogon() in

d:\oracle\ora90\apache\apache\htdocs\test.php on line 7

-------------------------------------------------------------------------------------------

Hi,

Zuerst einmal musst du in der PHP.ini das ";" vor der entsprechenden dll entfernen.

Wenn das nicht reicht kann es auch sein, das PHP die dll's im Windows System Verzeichniss abgelegt hat.

MfG

hi nochmal.

ich habe ja die auskommentierung der extension aufgehoben

also das ; weggemacht!

und mit der angabe

extension_dir = "D:\oracle\PHP4\extensions\"

sag ich ihm doch explizit in welchem verzeichnis die

extensions liegen!

an dem kann dann wohl nicht liegen!

Die oben ausgegebene Fehlermeldung besagt aber ganz klar das die DLL nicht geladen werden konnte, alle anderen Meldungen sind Randerscheinungen der fehlenden DLL.

Welcher Pfad zu PHP steht in der httpd.conf ?

MfG

Original geschrieben von DanielH

Die oben ausgegebene Fehlermeldung besagt aber ganz klar das die DLL nicht geladen werden konnte, alle anderen Meldungen sind Randerscheinungen der fehlenden DLL.

Nein, die dll kann nicht geladen werden, da Functionen nicht vorhanden sind oder nicht richtig ausgeführt werden können.

Wenn die dll fehlt, würde als Meldung kommen: "Modul wurde nicht gefunden".

Warum nimmst du anstatt OCILogon(), OCINLogon()?

Ist der Oracle Client auf dem Webserver installiert?

Kannst du dich sonst vom Webserver aus auf den Datenbankserver connecten? oder handelt es sich um eine Maschine?

Gruß Jaraz

welchen eintrag in der httpd.conf meinst du denn ?

Zu jaranz beitrag:

Configuration ist wie folgt:

Win2k Maschiene, Oracle 9i mit Oracle Webserver Apache und PHP ist auch auf der maschine installiert. Folglich ist auch der Oracle client installiert!

Das ganze läuft auf einem Rechner!

Hallo

,hast du mal OCILogon versucht?

Gruß Jaraz

hi das ist das sind beide php scripts aber mit keinem hats geklappt!

<?php

$cms_user = "ABC";

$cms_pass = "ABC";

$cms_dbname = "ABC";

if( empty( $conn ) )

$conn = ocilogon($cms_user,$cms_pass,$cms_dbname);

?>

<?php

$cms_user = "ABC";

$cms_pass = "ABC";

$cms_dbname = "ABC";

if( empty( $conn ) )

$conn = ocinlogon($cms_user,$cms_pass,$cms_dbname);

?>

Dann kann es eigentlich nur an den Werten:

$cms_user = "ABC";

$cms_pass = "ABC";

$cms_dbname = "ABC";

liegen...

zum dritten Parameter sagt das Manual:

OCILogon() returns an connection identifier needed for most other OCI calls. The optional third parameter can either contain the name of the local Oracle instance or the name of the entry in tnsnames.ora to which you want to connect. If the optional third parameter is not specified, PHP uses the environment variables ORACLE_SID (Oracle instance) or TWO_TASK (tnsnames.ora) to determine which database to connect to.

Gruß Jaraz

also ich kann mir nicht helfen aber die fehlermeldung:

- unable to load dynamic libray 'D:\orace\PHP4\extensions\php_oci8.dll' - Die angegebene Prozedure wurde nicht gefunden.

klingt doch wirklich schwer danach als ob er die datei nicht finden kann! oder irre ich mich, was mich nur stuzig macht ist eben das ich den richtigen pfad gesetz habe und auch die dll im php.ini aktiviert habe.

Zu deinem Tip wegen dem Connectstring, es ist der richtige. das heißt er ist in der tnsnames.ora eingetragen!

ich kanns mir nicht erklären woran das liegt und ich würd es so dringed benötigen !!!

Da lösche doch mal alle php_oci8.dll auf dem Rechner, oder benenne Sie um. Dann siehst du ja ob ne andere Fehlermeldung kommt.

Gruß Jaraz

jetzt hab ich tausend mal rumgespielt und jetzt funzt plötzlich!

hat von euch einer ein einfachs php script das einen abfrage auf eine tabelle macht und die dann auf in den exporer pushed?

wäre super!

Original geschrieben von deus18

welchen eintrag in der httpd.conf meinst du denn ?

Auch wenn es sich weitestgehend erledigt hat:

Den, der die Scriptendungen die exe zuweisst:

Action application/x-httpd-php /pfad/zu/php.exe

MfG

Original geschrieben von Jaraz

Nein, die dll kann nicht geladen werden, da Functionen nicht vorhanden sind oder nicht richtig ausgeführt werden können.

Wenn die dll fehlt, würde als Meldung kommen: "Modul wurde nicht gefunden".

Warum nimmst du anstatt OCILogon(), OCINLogon()?

Ist der Oracle Client auf dem Webserver installiert?

Kannst du dich sonst vom Webserver aus auf den Datenbankserver connecten? oder handelt es sich um eine Maschine?

Gruß Jaraz

Kommt vermutlich auf die Version an ?

Bei mir kommt bei fehlenden dll's

"Unable to load dynamic Libary ... "

MfG

Original geschrieben von DanielH

Kommt vermutlich auf die Version an ?

Bei mir kommt bei fehlenden dll's

"Unable to load dynamic Libary ... "

MfG

Schon klar, ich meinte aber den Teil nach dem Modul.

"Unable to load dynamic Libary ... " "Modul" "Zusatz"

Bei fehlendem Modul lautet dieser Zusatz anders als bei einem Fehler im Modul.

Gruß Jaraz

also ich kann abschliesend nur sagen

das ich oracle client nochmal intsalliert habe

alle dlls ins WINNT\SYSTEM32 kopiert habe

und die den extension_dir = D:/winnt/system32/

so gesetz. computer reboot und schon hats

geklappt. angeblich gibts da irgend ein problem mit der

php_oci8.dll die ohne einen update auf den aktuellen

oraclient nicht lauffähig ist.

ist aber alles ziemlich merkwürdig und undurchsichtig

wer das auf nem anderen computer nochmal auf-

setzen und versuchen ob es mit diesen schritte

klappt!

aber dennoch nochmal danke für eure zahlreichen

antworten!

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.