oraphp.jpg

--user root

rpm -qa | grep php

yum install php-devel php-odbc
--------------------------------------
#unix-odbc install

yum install unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel
--------------------------------------
yum install gcc gcc-c++ autoconf automake
--------------------------------------
--Oracle instantclient-basic,instantclient-devel odbc-10.2.0.5.0-linux-x64.zip in root ordner kopieren:
--------------------------------------
rpm -ivh oracle-instantclient-basic-10.2.0.5-1.x86_64.rpm

rpm -ivh oracle-instantclient-devel-10.2.0.5-1.x86_64.rpm

unzip odbc-10.2.0.5.0-linux-x64.zip

cp ./instantclient_10_2/libsqora.so.10.1 /usr/lib/oracle/10.2.0.5/client64/lib

--bibliothek prüfen
find / -name libsqora.so.10.1 -print
ldd /usr/lib/oracle/10.2.0.5/client64/lib/libsqora.so.10.1

--------------------------------------
vi /etc/profile

export ORACLE_HOME=/usr/lib/oracle/10.2.0.5/client64
export ORACLE_SID=orcl
export TNS_ADMIN=/etc/oracle
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export NLS_LANG=GERMAN
export TWO_TASK=//xxx.xxx.x.x:1521/listener
--------------------------------------

mkdir /etc/oracle

vi /etc/oracle/tnsnames.ora

orcl =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.x.x)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
      (HS = OK)
    )
  )
--------------------------------------
vi /etc/odbc.ini

[oradsn]
Driver = OracleODBC-10g
DSN = OracleODBC-10g
ServerName = //xxx.xxx.x.x:1521/orcl
Database = orcl
--------------------------------------
vi /etc/odbcinst.ini

# Driver from the oracle-connector-odbc package
# Setup from the unixODBC package
[OracleODBC-10g]
Description = Oracle ODBC driver for Oracle 10g
Driver = /usr/lib/oracle/10.2.0.5/client64/lib/libsqora.so.10.1
FileUsage = 1
Driver Logging = 20

--------------------------------------
#Firewall http https tcp port 1521
--------------------------------------

LANG=C setup

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

vi /var/www/html/odbcs.php

<?php
$connect = odbc_connect('oradsn', 'USER', 'PASS');
$query = "SELECT * FROM TABLE;";
$result = odbc_exec($connect, $query);

while(odbc_fetch_row($result)){
$field1 = odbc_result($result, 1);
$field2 = odbc_result($result, 2);
print("$field1 $field2\n");
}


odbc_close($connect);

?%>
--------------------------------------
vi /etc/sysconfig/selinux

#SELINUX=enforcing
SELINUX=disabled

reboot
--------------------------------------

#echo $ORACLE_SID
ln -s /usr/lib/oracle/10.2.0.5/client64/lib/libclntsh.so.10.1 libclntsh.so

--------------------------------------
--oci8
--------------------------------------
pear download pecl/oci8

tar xvzf oci8-2.0.6.tgz

cd oci8-2.0.6/

phpize

./configure --with-oci8=shared,instantclient,/usr/lib/oracle/10.2.0.5/client64/lib/

make

make install

setsebool -P httpd_execmem 1

vi /etc/php.ini

#neu
[OCI8]
extension=/root/oci8-2.0.6/modules/oci8.so

#enable
date.timezone = Europe/Berlin

#php --ri oci8

echo "extension=oci8.so" %> /etc/php.d/oci8.ini

#Apache neu starten
service httpd restart