reto: Stored Procedure aufrufen

Beitrag lesen

Ich habe nun etwas versucht, aber irgendwie bekomme ich es doch nicht hin..

<?PHP
  // In diesem Beispiel wird beschrieben wie man eine StoredProcedure aufruft,
  // einen Integer übergibt und diesen wieder ausgibt.

// Oracle Client muß installiert sein und die extension php_oci8 muß installiert sein!
  // Bei dem Beispiel: ps
  // Host-Name: rechner
  // Port-Nummer: 1521

// Variablen
  $usr = "Dein User";
  $pwd = "Dein Passwort";
  $sid = "Dienstname";

// Verbindung zum Oracle-Server herstellen
  $conn = OCILogon ($usr, $pwd, $sid);

// SoredProcedure t_phpsaveproc(integer) aufrufen
  $stmt = OCIParse($conn, "begin :result := t_phpsaveproc(1); end;");

// OCIBindByName bindet die Variable result an den Platzhalter $result
  OCIBindByName($stmt, "result", &$result);

// Commit, hier werden die "Jobs" ausgeführt.
  OCIExecute($stmt);

// Mit OCIResult wird der Rückgabewert der StoredProcedure aus der Menge in die PHP-Variable $result
geschrieben
  OCIResult($stmt,$result);

// Ausgabe des Rückgabewertes
  echo $result;

// Verbindung zum Oracle-Server schließen
  ocilogoff($conn);
?>

habe dieses Testscript genommen und habe es mit meinen Angaben ausgefüllt. Mein Ausgangsscript sieht ja folgendermassen aus:

DECLARE
  P_C VARCHAR2(200);
  P_ID NUMBER;
  P_OUT VARCHAR2(200);

BEGIN
  P_C := '41795849067';
  P_ID := 1;
  P_OUT := NULL;

DB_KDB.V5 ( P_C, P_ID, P_OUT );

DBMS_OUTPUT.Put_Line('P_OUT = ' || P_OUT);

COMMIT;
END;

Wie muss ich nun dies in das obige Skript einfügen?