????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 18.220.23.205 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/oci8/tests/ |
Upload File : |
--TEST-- Bug #51291 (oci_error() doesn't report last error when called two times) --SKIPIF-- <?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); ?> --FILE-- <?php require(dirname(__FILE__).'/connect.inc'); echo "Test 1 - Parse\n"; $s = @oci_parse($c, "select ' from dual"); if (!$s) { var_dump(oci_error($c)); echo "2nd call\n"; var_dump(oci_error($c)); } echo "\nTest 2 - Parse\n"; $s = @oci_parse($c, "select ' from dual"); if (!$s) { var_dump(oci_error(), oci_error($c), oci_error($s)); echo "2nd call\n"; var_dump(oci_error(), oci_error($c), oci_error($s)); } echo "\nTest 3 - Execute\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error($s)); echo "2nd call\n"; var_dump(oci_error($s)); } echo "\nTest 4 - Execute - consecutive oci_error calls of different kinds\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); echo "2nd call\n"; var_dump(oci_error(), oci_error($c), oci_error($s)); } echo "\nTest 5 - Execute - after oci_rollback\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); $r = oci_rollback($c); echo "Rollback status is "; if (is_null($r)) echo "null"; else if ($r === false) echo "false"; else if ($r === true) echo "true"; else echo $r; echo "\n"; echo "2nd call after oci_rollback\n"; var_dump(oci_error(), oci_error($c), oci_error($s)); } echo "\nTest 6 - Execute - after successful 2nd query with new handle\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); $s2 = oci_parse($c, 'select 1 from dual'); $r = oci_execute($s2, OCI_DEFAULT); echo "Execute status is "; if (is_null($r)) echo "null"; else if ($r === false) echo "false"; else if ($r === true) echo "true"; else echo $r; echo "\n"; echo "2nd call after successful execute\n"; var_dump(oci_error(), oci_error($c), oci_error($s), oci_error($s2)); } echo "\nTest 7 - Execute - after successful 2nd query with same handle\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); $s = oci_parse($c, 'select 1 from dual'); $r = oci_execute($s, OCI_DEFAULT); echo "Execute status is "; if (is_null($r)) echo "null"; else if ($r === false) echo "false"; else if ($r === true) echo "true"; else echo $r; echo "\n"; echo "2nd call after successful execute\n"; var_dump(oci_error(), oci_error($c), oci_error($s)); } echo "\nTest 8 - Execute - after unsuccessful 2nd query with new handle\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); $s2 = oci_parse($c, 'select reallynothere from dual'); $r = oci_execute($s2, OCI_DEFAULT); echo "Execute status is "; if (is_null($r)) echo "null"; else if ($r === false) echo "false"; else if ($r === true) echo "true"; else echo $r; echo "\n"; echo "2nd call after unsuccessful execute\n"; var_dump(oci_error(), oci_error($c), oci_error($s), oci_error($s2)); } echo "\nTest 9 - Execute - after unsuccessful 2nd query with same handle\n"; $s = @oci_parse($c, 'select doesnotexist from dual'); $r = @oci_execute($s, OCI_DEFAULT); if (!$r) { var_dump(oci_error(), oci_error($c), oci_error($s)); $s = oci_parse($c, 'select reallynothere from dual'); $r = oci_execute($s, OCI_DEFAULT); echo "Execute status is "; if (is_null($r)) echo "null"; else if ($r === false) echo "false"; else if ($r === true) echo "true"; else echo $r; echo "\n"; echo "2nd call after unsuccessful execute\n"; var_dump(oci_error(), oci_error($c), oci_error($s)); } ?> ===DONE=== <?php exit(0); ?> --EXPECTF-- Test 1 - Parse array(4) { ["code"]=> int(1756) ["message"]=> string(48) "ORA-01756: %s" ["offset"]=> int(0) ["sqltext"]=> string(0) "" } 2nd call array(4) { ["code"]=> int(1756) ["message"]=> string(48) "ORA-01756: %s" ["offset"]=> int(0) ["sqltext"]=> string(0) "" } Test 2 - Parse Warning: oci_error() expects parameter 1 to be resource, boolean given in %sbug51291_1.php on line %d bool(false) array(4) { ["code"]=> int(1756) ["message"]=> string(48) "ORA-01756: %s" ["offset"]=> int(0) ["sqltext"]=> string(0) "" } NULL 2nd call Warning: oci_error() expects parameter 1 to be resource, boolean given in %sbug51291_1.php on line %d bool(false) array(4) { ["code"]=> int(1756) ["message"]=> string(48) "ORA-01756: %s" ["offset"]=> int(0) ["sqltext"]=> string(0) "" } NULL Test 3 - Execute array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } 2nd call array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Test 4 - Execute - consecutive oci_error calls of different kinds bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } 2nd call bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Test 5 - Execute - after oci_rollback bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Rollback status is true 2nd call after oci_rollback bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Test 6 - Execute - after successful 2nd query with new handle bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Execute status is true 2nd call after successful execute bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } bool(false) Test 7 - Execute - after successful 2nd query with same handle bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Execute status is true 2nd call after successful execute bool(false) bool(false) bool(false) Test 8 - Execute - after unsuccessful 2nd query with new handle bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Warning: oci_execute(): ORA-00904: %sREALLYNOTHERE%s in %sbug51291_1.php on line %d Execute status is false 2nd call after unsuccessful execute bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904%sREALLYNOTHERE%s" ["offset"]=> int(%d) ["sqltext"]=> string(30) "select reallynothere from dual" } Test 9 - Execute - after unsuccessful 2nd query with same handle bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904:%sDOESNOTEXIST%s" ["offset"]=> int(%d) ["sqltext"]=> string(29) "select doesnotexist from dual" } Warning: oci_execute(): ORA-00904: %sREALLYNOTHERE%s in %sbug51291_1.php on line %d Execute status is false 2nd call after unsuccessful execute bool(false) bool(false) array(4) { ["code"]=> int(904) ["message"]=> string(%d) "ORA-00904%sREALLYNOTHERE%s" ["offset"]=> int(%d) ["sqltext"]=> string(30) "select reallynothere from dual" } ===DONE===