Calling an Oracle stored procedure from php

Questions about the MySQL, PostgreSQL, and most other databases, as well as using it with PHP can be asked here.

Moderator: General Moderators

Post Reply
aadaileh
Forum Newbie
Posts: 1
Joined: Tue Oct 14, 2003 10:44 am

Calling an Oracle stored procedure from php

Post by aadaileh »

I have the following stored procedure in Oracle 8:

CREATE OR REPLACE procedure kunde_create
(iname1 in varchar2,
iname2 in varchar2,
iname3 in varchar2,
ianrede in number,
istrasse in varchar2,
iland varchar2,
iplz in varchar2,
iort in varchar2,
iortsteil in varchar2,
itelefon in varchar2,
iemail in varchar2,
itelefax in varchar2,
imobil in varchar2,
ianrufer in varchar2,
izusinfo in varchar2,
izusatz2 in varchar2,
okdnr out varchar2)
is
vkndnr number;
vadrnr number;
vkdnr varchar2(15);
ikugru constant number:=4;
minkdnr constant varchar2(15):='44000000';
maxkdnr constant varchar2(15):='50000000';
begin
.....
..... SOME CODE ....
.....
okdnr:='something_to_output';
commit;
end kunde_create;
/


I am trying to call this SP from a php script, in this way:

$connection = ora_logon("username@db", "password");
$cursor = ora_open($connection);
ora_commitoff($connection);

$cu=ora_parse($cursor, "begin KW.kunde_create ( :Sta_nameD, :Sta_name2D, :Sta_kugruD, :ianredeD, :Sta_straD, :Sta_landD, :Sta_plzD, :Sta_ortD, :Sta_ortsteilD, :Sta_telD, :Sta_mailD, :Sta_faxD, :Sta_tel2D, :Sta_anruD, :Sta_zusD, :Sta_zus2D ,:okdnr); end;");

ora_bind($cursor, ":Sta_nameD", $Sta_nameD, 32, 1);
ora_bind($cursor, ":Sta_name2D", $Sta_name2D, 32, 1);
ora_bind($cursor, ":ianredeD", $ianredeD, 32, 1);
ora_bind($cursor, ":Sta_straD", $Sta_straD, 32, 1);
ora_bind($cursor, ":Sta_landD", $Sta_landD, 32, 1);
ora_bind($cursor, ":Sta_plzD", $Sta_plzD, 32, 1);
ora_bind($cursor, ":Sta_ortD", $Sta_ortD, 32, 1);
ora_bind($cursor, ":Sta_ortsteilD", $Sta_ortsteilD, 32, 1);
ora_bind($cursor, ":Sta_telD", $Sta_telD, 32, 1);
ora_bind($cursor, ":Sta_mailD", $Sta_mailD, 32, 1);
ora_bind($cursor, ":Sta_faxD", $Sta_faxD, 32, 1);
ora_bind($cursor, ":Sta_tel2D", $Sta_tel2D, 32, 1);
ora_bind($cursor, ":Sta_anruD", $Sta_anruD, 32, 1);
ora_bind($cursor, ":Sta_zusD", $Sta_zusD, 32, 1);
ora_bind($cursor, ":Sta_zus2D", $Sta_zus2D, 32, 1);
ora_bind($cursor, ":okdnr", $okdnr, 32, 2);
ora_exec($cursor); //Line 93

This code brings me back this error:

Warning: Can't find variable for parameter in connect.php on line 93


I tried nearlly everything, but it doesnt work :(

Can anybody help me please.

Thanx in advance,
Ahmed Adaileh
Post Reply