020.phpt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. --TEST--
  2. mysqli bind_param/bind_result date
  3. --EXTENSIONS--
  4. mysqli
  5. --SKIPIF--
  6. <?php
  7. require_once('skipifconnectfailure.inc');
  8. ?>
  9. --FILE--
  10. <?php
  11. require_once("connect.inc");
  12. /*** test mysqli_connect 127.0.0.1 ***/
  13. $link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket);
  14. mysqli_select_db($link, $db);
  15. mysqli_query($link, "SET sql_mode=''");
  16. mysqli_query($link,"DROP TABLE IF EXISTS test_bind_result");
  17. $rc = @mysqli_query($link,"CREATE TABLE test_bind_result(
  18. c1 date,
  19. c2 time,
  20. c3 timestamp(14),
  21. c4 year,
  22. c5 datetime,
  23. c6 timestamp(4),
  24. c7 timestamp(6))");
  25. if (!$rc)
  26. $rc = mysqli_query($link,"CREATE TABLE test_bind_result(
  27. c1 date,
  28. c2 time,
  29. c3 timestamp,
  30. c4 year,
  31. c5 datetime,
  32. c6 timestamp,
  33. c7 timestamp)");
  34. $stmt = mysqli_prepare($link, "INSERT INTO test_bind_result VALUES (?,?,?,?,?,?,?)");
  35. mysqli_stmt_bind_param($stmt, "sssssss", $d1, $d2, $d3, $d4, $d5, $d6, $d7);
  36. $d1 = "2002-01-02";
  37. $d2 = "12:49:00";
  38. $d3 = "2002-01-02 17:46:59";
  39. $d4 = "2010";
  40. $d5 = "2010-07-10";
  41. $d6 = "2020";
  42. $d7 = "1999-12-29";
  43. mysqli_stmt_execute($stmt);
  44. mysqli_stmt_close($stmt);
  45. $stmt = mysqli_prepare($link, "SELECT c1, c2, c3, c4, c5, c6, c7 FROM test_bind_result");
  46. mysqli_stmt_bind_result($stmt,$c1, $c2, $c3, $c4, $c5, $c6, $c7);
  47. mysqli_stmt_execute($stmt);
  48. mysqli_stmt_fetch($stmt);
  49. $test = array($c1,$c2,$c3,$c4,$c5,$c6,$c7);
  50. var_dump($test);
  51. mysqli_stmt_close($stmt);
  52. mysqli_query($link, "DROP TABLE IF EXISTS test_bind_result");
  53. mysqli_close($link);
  54. print "done!";
  55. ?>
  56. --CLEAN--
  57. <?php
  58. require_once("connect.inc");
  59. if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
  60. printf("[c001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
  61. if (!mysqli_query($link, "DROP TABLE IF EXISTS test_bind_result"))
  62. printf("[c002] Cannot drop table, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
  63. mysqli_close($link);
  64. ?>
  65. --EXPECTF--
  66. array(7) {
  67. [0]=>
  68. %s(10) "2002-01-02"
  69. [1]=>
  70. %s(8) "12:49:00"
  71. [2]=>
  72. %s(19) "2002-01-02 17:46:59"
  73. [3]=>
  74. string(4) "2010"
  75. [4]=>
  76. %s(19) "2010-07-10 00:00:00"
  77. [5]=>
  78. %s(19) "0000-00-00 00:00:00"
  79. [6]=>
  80. %s(19) "1999-12-29 00:00:00"
  81. }
  82. done!