mysqli_use_result.phpt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. --TEST--
  2. mysqli_use_result()
  3. --EXTENSIONS--
  4. mysqli
  5. --SKIPIF--
  6. <?php
  7. require_once('skipifconnectfailure.inc');
  8. ?>
  9. --FILE--
  10. <?php
  11. require_once("connect.inc");
  12. require('table.inc');
  13. if (!$res = mysqli_real_query($link, "SELECT id, label FROM test ORDER BY id"))
  14. printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
  15. if (!is_object($res = mysqli_use_result($link)))
  16. printf("[004] Expecting object, got %s/%s. [%d] %s\n",
  17. gettype($res), $res, mysqli_errno($link), mysqli_error($link));
  18. try {
  19. var_dump(mysqli_data_seek($res, 2));
  20. } catch (\Error $e) {
  21. echo $e->getMessage() . \PHP_EOL;
  22. }
  23. mysqli_free_result($res);
  24. if (!mysqli_query($link, "DELETE FROM test"))
  25. printf("[006] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
  26. if (false !== ($res = mysqli_use_result($link)))
  27. printf("[007] Expecting boolean/false, got %s/%s. [%d] %s\n",
  28. gettype($res), $res, mysqli_errno($link), mysqli_error($link));
  29. if (!$res = mysqli_query($link, "SELECT id, label FROM test ORDER BY id"))
  30. printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
  31. if (false !== ($tmp = mysqli_data_seek($res, 1)))
  32. printf("[009] Expecting boolean/false, got %s/%s\n",
  33. gettype($tmp), $tmp);
  34. mysqli_close($link);
  35. try {
  36. mysqli_use_result($link);
  37. } catch (Error $exception) {
  38. echo $exception->getMessage() . "\n";
  39. }
  40. print "done!";
  41. ?>
  42. --CLEAN--
  43. <?php
  44. require_once("clean_table.inc");
  45. ?>
  46. --EXPECT--
  47. mysqli_data_seek() cannot be used in MYSQLI_USE_RESULT mode
  48. mysqli object is already closed
  49. done!