php - How to resolve ORA-01036 -


i creating online system using php , oracle oci8.

anyone here have encountered error:

warning: oci_bind_by_name() [function.oci-bind-by-name]: error while trying retrieve text error ora-01036 in dbcontrol.php on line 50 success  

here dbcontrol.php:

function plsql_insert($plsql, $array){         $this -> connect(); //create database connection         $this -> statement = oci_parse($this -> conn, $plsql); //prepare statement call pl/sql stored procedure          foreach ($array $key => $value){             oci_bind_by_name($this -> statement, $key, $array[$key]);         }          $this -> execute = oci_execute($this -> statement); //execute statement         $this -> result = ($this -> execute) ? "success" : "failed";         return $this->result;     } 

here code calls function:

include "../dbaseconn/dbcontrol.php";  extract($_get);  $personalbackground = explode(",",$personalbackground);  $arrpersonal = array();  foreach($personalbackground $val) {     $tmpdata = explode("*",$val);     $arrpersonal[$tmpdata[0]]=$tmpdata[1]; } $arrpersonal[':rec_no'] = '4'; $plsql = "call test.insert_back_personal(:name_last,:name_first,:name_middle,:present_address,:mobile_phone,:permanent_address,:home_number,:date_of_birth,:birth_place,:civil_status,:sss_no,:tin,:philhealth_no,:hdmf_no,:blood_type,:gender,:gov_license,:email_address,:rec_no)"; $dbcontrol = new dbcontrol; echo $dbcontrol->plsql_insert($plsql,$arrpersonal); 

and pl/sql block:

create or replace package body recruit.test                            procedure insert_back_personal( v_name_last in varchar2,                   v_name_first in varchar2,                   v_name_middle in varchar2,                   v_present_address in varchar2,                   v_mobile_phone in varchar2,                   v_permanent_address in varchar2,                   v_home_number in varchar2,                   v_date_of_birth in char,                   v_birth_place in char,                   v_civil_status in char,                   v_sss_no in varchar2,                   v_tin in varchar2,                   v_philhealth in varchar2,                   v_hdmf_no in varchar2,                   v_blood_type in varchar2,                   v_gender in char,                   v_gov_license in varchar2,                   v_email_address in varchar2,                   v_rec_no in varchar2                   )                    --out_data out cv_type               begin                      insert  recruit.back_personal (rec_no, name_last,name_first, name_middle,                                                present_address, mobile_phone, permanent_address,                                                 home_number, date_of_birth, birth_place, civil_status,                                                sss_no, tin, philhealth_no, hdmf_no,                                                 blood_type, gender, gov_license, email_address, insertdate)           values (v_rec_no, v_name_last, v_name_first, v_name_middle,                   v_present_address, v_mobile_phone, v_permanent_address,                   v_home_number, v_date_of_birth, v_birth_place, v_civil_status,                    v_sss_no, v_tin, v_philhealth, v_hdmf_no,                    v_blood_type, v_gender, v_gov_license, v_email_address, sysdate                   );           commit;   end insert_back_personal;   

as try this, can insert database having warning: ora-01036. kinda annoying.

how solve issue?

please visit answer same want...it direct written pl/sql block instead of call procedure....

recover table of varchar2 pl/sql function in php


Comments

Popular posts from this blog

curl - PHP fsockopen help required -

HTTP/1.0 407 Proxy Authentication Required PHP -

java - More than one row with the given identifier was found: 1, for class: com.model.Diagnosis -