if ($st2 = ociparse($this->_DB(), $sql))
{
ociexecute($st2);
if (ocifetchinto($st2, $row, OCI_NUM)) $module_id = intval($row[0]);
ocifreestatement($st2);
}
$row就是结果,你看一下.

解决方案 »

  1.   

    以下代码是把你的代码和PHP手册中oci_fetch_all函数的sample合并在一起的。
    最后获得的$data是一个键名为字段名,值为数字索引数组的二维数组。 其数字索引数组的[0]为结果中该字段第一行的值,[1]则为第二行的值,以此类推。
    $curs = oci_new_cursor($db); 
    $command = "begin :rs=PRO_Search_Info_Key.getRecommendInfoID('PARA_1','PARA_2','PARA_3');end;"; $stmt = oci_parse($db, $command); 
    oci_bind_by_name($stmt,":rs",$curs,-1,OCI_B_CURSOR);    
    oci_execute($stmt); 
    oci_Execute($curs);$row_count = oci_fetch_all($stmt, $data);
    if ($row_count > 0) {
       echo "<table border=\"1\">\n";
       echo "<tr>\n";
       foreach ($data as $key => $val) {
          echo "<th>$key</th>\n";
       }
       echo "</tr>\n";   for ($i = 0; $i < $row_count; $i++) {
          echo "<tr>\n";
          foreach ($data as $vals) {
             echo "<td>$vals[$i]</td>\n";
          }
          echo "</tr>\n";
       }
       echo "</table>\n";
    } else {
       echo "No data found<br />\n";
    }
    echo "$row_count Records Selected<br />\n";oci_free_statement($stmt);
      

  2.   

    建议使用php内置类PDO,比较安全,方便数据库转换也比较方便