Skip to content

Instantly share code, notes, and snippets.

@ertuncefeoglu
Created September 24, 2013 10:42
Oracle database connection without adodb php library using only oci functions
<?php
//phpinfo();die;
show();
function show() {
$conn=connect();
$text= '<html>';
$text.='<meta http-equiv="Cache-Control" content="no-store,no-cache,max-age=-1">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Pragma" content="no-store">
<meta http-equiv="Expires" content="-1">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF8">';
$text.='</head><body><PRE>';
echo $text;
select_data($conn);
//insert_data($conn);
$text2.='</body></html>';
echo $text2;
oci_close($conn);
}
function select_data($conn)
{
$sql=" SELECT ZF.ZINCIR_KODU ,ZYS.FIRMA_ADI
FROM ZDS.ZVIEW_DSAP_ZINCIR_TO_YS ZYS
INNER JOIN SAPTMQ.ZDSAP_ZINCIR_FIS ZF
ON ZYS.ZINCIR_KODU=ZF.ZINCIR_KODU
WHERE
ZF.KAYIT_DURUMU='1'
AND ZF.ISLEM_TARIHI=:ISLEM_TARIHI
AND ZF.FIS_TUR_KODU=:FIS_TUR_KODU
/*AND ZF.ONAY_DURUMU=:ONAY_DURUMU*/
AND ZYS.YS_KODU=:YETK_SATICI_KODU";
$stmt = oci_parse($conn, $sql);
$ISLEM_TARIHI="20121101";
$FIS_TUR_KODU="TTNI";
$ONAY_DURUMU=" ";
$YETK_SATICI_KODU="0000700651";
//OCIBindByName($stmt,":ISLEM_TARIHI",$ISLEM_TARIHI);
oci_bind_by_name($stmt,":ISLEM_TARIHI",$ISLEM_TARIHI);
oci_bind_by_name($stmt,":FIS_TUR_KODU",$FIS_TUR_KODU);
//oci_bind_by_name($stmt,":ONAY_DURUMU",$ONAY_DURUMU,4000,SQLT_CHR);
//oci_bind_by_name($stmt,":ONAY_DURUMU",$ONAY_DURUMU,-1,SQLT_CHR);
oci_bind_by_name($stmt,":ONAY_DURUMU",$ONAY_DURUMU,1,SQLT_AFCXX);
oci_bind_by_name($stmt,":YETK_SATICI_KODU",$YETK_SATICI_KODU);
/*
$arr_it=array($ISLEM_TARIHI);
$arr_ftk=array($FIS_TUR_KODU);
$arr_od=array($ONAY_DURUMU);
$arr_ys=array($YETK_SATICI_KODU);
oci_bind_array_by_name($stmt, ":ISLEM_TARIHI", $arr_it, 1, -1, SQLT_CHR);
oci_bind_array_by_name($stmt, ":FIS_TUR_KODU", $arr_ftk, 1, -1, SQLT_CHR);
oci_bind_array_by_name($stmt, ":ONAY_DURUMU", $arr_od, 1, -1, SQLT_CHR);
oci_bind_array_by_name($stmt, ":YETK_SATICI_KODU", $arr_ys, 1, -1, SQLT_CHR);
*/
var_dump($stmt);
oci_execute($stmt, OCI_DEFAULT);
var_dump($stmt);
//return ;
$res=false;
$i=0;
while ($res=oci_fetch($stmt)) {
//echo oci_result($stmt, "AD");
echo oci_result($stmt,"ZINCIR_KODU")." ";
echo oci_result($stmt,"FIRMA_ADI")."<br>";
//var_dump($res);
$i++;
if ($i==9999) exit;
}
}
function insert_data($conn)
{
$sql=" INSERT INTO SAPTMQ.ZDSAP_A_ILCE (ILCE_KODU,ILCE_ADI,IL_KODU) VALUES (:ILCE_KODU,:ILCE_ADI,:IL_KODU)";
$stmt = oci_parse($conn, $sql);
$ILCE_KODU="99999";
$ILCE_ADI="DENEME";
$IL_KODU=" ";
//OCIBindByName($stmt,":ILCE_KODU",$ILCE_KODU);
oci_bind_by_name($stmt,":ILCE_KODU",$ILCE_KODU);
oci_bind_by_name($stmt,":ILCE_ADI",$ILCE_ADI);
oci_bind_by_name($stmt,":IL_KODU",$IL_KODU);
//OCIBindByName($stmt,":ONAY_DURUMU",$IL_KODU,4000,SQLT_CHR);
/*
$arr_ik=array($ILCE_KODU);
$arr_ia=array($ILCE_ADI);
$arr_ilk=array($IL_KODU);
oci_bind_array_by_name($stmt, ":ILCE_KODU", $arr_ik, 1, -1, SQLT_CHR);
oci_bind_array_by_name($stmt, ":ILCE_ADI", $arr_ia, 1, -1, SQLT_CHR);
oci_bind_array_by_name($stmt, ":IL_KODU", $arr_ilk, 1, -1, SQLT_CHR);
*/
oci_execute($stmt, OCI_DEFAULT);
oci_commit($conn);
var_dump($stmt);
}
function select_data2($conn)
{
$stmt = oci_parse($conn, "select * from SAPTMQ.ZDSAP_KISI");
oci_execute($stmt);
$nrows = oci_fetch_all($stmt, $results);
//var_dump($results);
foreach ($results as $val) {
foreach ($val as $it) {
echo($it); echo "<br>";
}
}
}
function connect($id="test") {
if ($id=="test") {
$db= "(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.254.75)(PORT = 1525))
)
(CONNECT_DATA =
(SERVICE_NAME = TMQ)
)
)";
$charSet="TURKISH_TURKEY.WE8ISO8859P9";
$charSet="TURKISH_TURKEY.UTF8";
$charSet="AMERICAN_AMERICA.WE8ISO8859P9";
$charSet="AMERICAN_AMERICA.UTF8";
$c1 = oci_connect("ZDS", "dt32xc29", $db,$charSet);
} else if ($id=="canli") {
$db= "(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.254.80)(PORT = 1527))
)
(CONNECT_DATA =
(SERVICE_NAME = TMQ)
)
)";
$charSet="TURKISH_TURKEY.WE8ISO8859P9";
$charSet="TURKISH_TURKEY.UTF8";
$charSet="AMERICAN_AMERICA.WE8ISO8859P9";
$charSet="AMERICAN_AMERICA.UTF8";
$c1 = oci_connect("ZDS", "dt32xc29", $db,$charSet);
} else throw new Exception("HATA. Ekisik parametre!");
return $c1;
}
//test_oci_47();
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment