diff options
Diffstat (limited to 'ext/mysqli/tests/mysqli_stmt_get_result.phpt')
-rw-r--r-- | ext/mysqli/tests/mysqli_stmt_get_result.phpt | 49 |
1 files changed, 16 insertions, 33 deletions
diff --git a/ext/mysqli/tests/mysqli_stmt_get_result.phpt b/ext/mysqli/tests/mysqli_stmt_get_result.phpt index 712537a10b..fc07a1d2a2 100644 --- a/ext/mysqli/tests/mysqli_stmt_get_result.phpt +++ b/ext/mysqli/tests/mysqli_stmt_get_result.phpt @@ -110,21 +110,7 @@ if (!function_exists('mysqli_stmt_get_result')) mysqli_stmt_close($stmt); - if (!$stmt = mysqli_stmt_init($link)) - printf("[032] [%d] %s\n", mysqli_errno($link), mysqli_error($link)); - - if (!mysqli_stmt_prepare($stmt, "SELECT id, label FROM test ORDER BY id LIMIT 2")) - printf("[033] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt)); - - if (!mysqli_stmt_execute($stmt)) - printf("[034] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt)); - - $id = NULL; - $label = NULL; - if (true !== ($tmp = mysqli_stmt_bind_result($stmt, $id, $label))) - printf("[035] Expecting boolean/true, got %s/%s\n", gettype($tmp), var_export($tmp, 1)); - - // get_result cannot be used in PS cursor mode + // get_result can be used in PS cursor mode if (!$stmt = mysqli_stmt_init($link)) printf("[030] [%d] %s\n", mysqli_errno($link), mysqli_error($link)); @@ -137,23 +123,10 @@ if (!function_exists('mysqli_stmt_get_result')) if (!mysqli_stmt_execute($stmt)) printf("[033] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt)); - mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); - try { - $res = mysqli_stmt_get_result($stmt); - // we expect no segfault if we try to fetch a row because get_result should throw an error or return false - mysqli_fetch_assoc($res); - } catch (\mysqli_sql_exception $e) { - echo $e->getMessage() . "\n"; - } - - try { - $res = $stmt->get_result(); - // we expect no segfault if we try to fetch a row because get_result should throw an error or return false - $res->fetch_assoc(); - } catch (\mysqli_sql_exception $e) { - echo $e->getMessage() . "\n"; + $result = mysqli_stmt_get_result($stmt); + while ($row = mysqli_fetch_assoc($result)) { + var_dump($row); } - mysqli_report(MYSQLI_REPORT_OFF); if (!$stmt = mysqli_stmt_init($link)) printf("[034] [%d] %s\n", mysqli_errno($link), mysqli_error($link)); @@ -213,8 +186,18 @@ Warning: mysqli_stmt_fetch(): invalid object or resource mysqli_stmt Warning: mysqli_stmt_get_result(): invalid object or resource mysqli_stmt in %s on line %d -mysqli_stmt_get_result() cannot be used with cursors -get_result() cannot be used with cursors +array(2) { + ["id"]=> + int(1) + ["label"]=> + string(1) "a" +} +array(2) { + ["id"]=> + int(2) + ["label"]=> + string(1) "b" +} [040] [2014] [Commands out of sync; you can't run this command now] [041] [0] [] array(2) { |