Annotation of embedaddon/php/ext/mysqli/tests/057.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: mysqli_stmt_result_metadata
! 3: --SKIPIF--
! 4: <?php
! 5: require_once('skipif.inc');
! 6: require_once('skipifconnectfailure.inc');
! 7: ?>
! 8: --FILE--
! 9: <?php
! 10: require_once("connect.inc");
! 11:
! 12: /*** test mysqli_connect 127.0.0.1 ***/
! 13: $link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket);
! 14:
! 15: mysqli_select_db($link, $db);
! 16:
! 17: mysqli_query($link,"DROP TABLE IF EXISTS test_store_result");
! 18: mysqli_query($link,"CREATE TABLE test_store_result (a int)");
! 19:
! 20: mysqli_query($link, "INSERT INTO test_store_result VALUES (1),(2),(3)");
! 21:
! 22: $stmt = mysqli_prepare($link, "SELECT * FROM test_store_result");
! 23: mysqli_stmt_execute($stmt);
! 24:
! 25: /* this should produce an out of sync error */
! 26: if ($result = mysqli_query($link, "SELECT * FROM test_store_result")) {
! 27: mysqli_free_result($result);
! 28: printf ("Query ok\n");
! 29: }
! 30: mysqli_stmt_close($stmt);
! 31:
! 32: /* now we should try mysqli_stmt_reset() */
! 33: $stmt = mysqli_prepare($link, "SELECT * FROM test_store_result");
! 34: var_dump(mysqli_stmt_execute($stmt));
! 35: var_dump(mysqli_stmt_reset($stmt));
! 36:
! 37: var_dump($stmt = mysqli_prepare($link, "SELECT * FROM test_store_result"));
! 38: if ($IS_MYSQLND && $stmt->affected_rows !== -1)
! 39: printf("[001] Expecting -1, got %d\n", $stmt->affected_rows);
! 40:
! 41: var_dump(mysqli_stmt_execute($stmt));
! 42: var_dump($stmt = @mysqli_prepare($link, "SELECT * FROM test_store_result"), mysqli_error($link));
! 43: var_dump(mysqli_stmt_reset($stmt));
! 44:
! 45: $stmt = mysqli_prepare($link, "SELECT * FROM test_store_result");
! 46: mysqli_stmt_execute($stmt);
! 47: $result1 = mysqli_stmt_result_metadata($stmt);
! 48: mysqli_stmt_store_result($stmt);
! 49:
! 50: printf ("Rows: %d\n", mysqli_stmt_affected_rows($stmt));
! 51:
! 52: /* this should show an error, cause results are not buffered */
! 53: if ($result = mysqli_query($link, "SELECT * FROM test_store_result")) {
! 54: $row = mysqli_fetch_row($result);
! 55: mysqli_free_result($result);
! 56: }
! 57:
! 58: var_dump($row);
! 59:
! 60: mysqli_free_result($result1);
! 61: mysqli_stmt_close($stmt);
! 62: mysqli_close($link);
! 63: echo "done!";
! 64: ?>
! 65: --CLEAN--
! 66: <?php
! 67: require_once("connect.inc");
! 68: if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
! 69: printf("[c001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
! 70:
! 71: if (!mysqli_query($link, "DROP TABLE IF EXISTS test_store_result"))
! 72: printf("[c002] Cannot drop table, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 73:
! 74: mysqli_close($link);
! 75: ?>
! 76: --EXPECTF--
! 77: bool(true)
! 78: bool(true)
! 79: object(mysqli_stmt)#%d (%d) {
! 80: [%u|b%"affected_rows"]=>
! 81: int(%i)
! 82: [%u|b%"insert_id"]=>
! 83: int(0)
! 84: [%u|b%"num_rows"]=>
! 85: int(0)
! 86: [%u|b%"param_count"]=>
! 87: int(0)
! 88: [%u|b%"field_count"]=>
! 89: int(1)
! 90: [%u|b%"errno"]=>
! 91: int(0)
! 92: [%u|b%"error"]=>
! 93: %unicode|string%(0) ""
! 94: [%u|b%"sqlstate"]=>
! 95: %unicode|string%(5) "00000"
! 96: [%u|b%"id"]=>
! 97: int(3)
! 98: }
! 99: bool(true)
! 100: bool(false)
! 101: %unicode|string%(0) ""
! 102:
! 103: Warning: mysqli_stmt_reset() expects parameter 1 to be mysqli_stmt, boolean given in %s on line %d
! 104: NULL
! 105: Rows: 3
! 106: array(1) {
! 107: [0]=>
! 108: %unicode|string%(1) "1"
! 109: }
! 110: done!
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>