Witam, mam taki problem, bo tworze klienta w php, zrobiłem create, inserty, selecty, ale z procedurami mam problem... wklejam kod poniżej:
<?php
$c = oci_connect("system", "bz", "10.0.2.15/orcl");
if (!$c) {
$e = oci_error();
echo $e['message'] . "<br>\n";
exit;
}
$plsql = "SET SERVEROUTPUT ON "
. "CREATE OR REPLACE PROCEDURE Pokaz_funkcji IS "
. "CURSOR pok_fun IS SELECT * FROM Stanowiska; "
. "tmp Stanowiska%ROWTYPE; "
. "BEGIN "
. "OPEN pok_fun; "
. "LOOP "
. "FETCH pok_fun INTO tmp; "
. "EXIT WHEN pok_fun%NOTFOUND; "
. "Dbms_Output.ENABLE; "
. "DBMS_OUTPUT.PUT_LINE(Nvl(tmp.Funkcja,'?')) "
. "END LOOP; "
. "CLOSE pok_fun; "
. "END; ";
$s = oci_parse($c, $plsql);
$r = @oci_execute($s);
if ($r) {
echo '<span style="color: Blue"; style="font-size:small"><br>Utworzono tabele</span>';}
else {
echo 'nie utworzono tabel';}
?>
pisze ze nie utworzono tabel...
zrobiłem także selecta do tego, ale też nie daje sobie rady:
<?php
$c = oci_connect("system", "bz", "10.0.2.15/orcl");
if (!$c) {
$e = oci_error();
echo $e['message'] . "<br>\n";
exit;
}
$s = oci_parse($c, "call Pokaz_funkcji()");
$c = oci_execute($s);
echo '
<br><table border=1>
<tr>
</tr> <br>
';
while ($row = oci_fetch_array($s, OCI_ASSOC+OCI_RETURN_NULLS)) {
foreach ($row as $item) {
print ($item?htmlentities($item):"");
}
print "\n";
}
print "</pre>"
?>
Prosze o pomoc...