Annotation of embedaddon/php/ext/mysqli/tests/mysqli_stmt_execute_stored_proc_out.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: mysqli_stmt_execute() - OUT
3: --SKIPIF--
4: <?php
5: require_once('skipif.inc');
6: require_once('skipifconnectfailure.inc');
7: require_once('connect.inc');
8: if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
9: die(sprintf('skip Cannot connect to MySQL, [%d] %s.', mysqli_connect_errno(), mysqli_connect_error()));
10: }
11: if (mysqli_get_server_version($link) < 50503) {
12: die(sprintf('skip Needs MySQL 5.5.3+, found version %d.', mysqli_get_server_version($link)));
13: }
14: /*
15: if ($IS_MYSQLND) {
16: die(sprintf("skip WHY ?!"));
17: }
18: */
19: ?>
20: --FILE--
21: <?php
22: require_once('connect.inc');
23:
24: if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
25: printf("[001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
26: $host, $user, $db, $port, $socket);
27: }
28:
29: if (!mysqli_query($link, 'DROP PROCEDURE IF EXISTS p'))
30: printf("[003] [%d] %s.\n", mysqli_errno($link), mysqli_error($link));
31:
32: if (mysqli_real_query($link, 'CREATE PROCEDURE p(IN ver_in VARCHAR(25), OUT ver_out VARCHAR(25)) BEGIN SELECT ver_in INTO ver_out; END;')) {
33: if (!$stmt = mysqli_prepare($link, 'CALL p(?, ?)'))
34: printf("[005] Cannot prepare CALL, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
35:
36: $ver_in = 'myversion';
37: $ver_out = '';
38: if (!mysqli_stmt_bind_param($stmt, 'ss', $ver_in, $ver_out))
39: printf("[006] Cannot bind parameter, [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
40:
41: if (!mysqli_stmt_execute($stmt))
42: printf("[007] Cannot execute CALL, [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
43:
44: printf("[008] More results: %s\n", (mysqli_more_results($link) ? "yes" : "no"));
45: printf("[009] Next results: %s\n", (mysqli_next_result($link) ? "yes" : "no"));
46:
47: if (!mysqli_stmt_bind_result($stmt, $ver_out) || !mysqli_stmt_fetch($stmt))
48: printf("[010] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
49:
50: if ("myversion" !== $ver_out)
51: printf("[011] Results seem wrong got '%s'\n", $ver_out);
52:
53: if (!mysqli_stmt_close($stmt))
54: printf("[012] Cannot close statement, [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
55:
56: if (!$res = $link->query("SELECT 1"))
57: printf("[013] [%d] %s\n", $link->errno, $link->error);
58:
59: } else {
60: printf("[004] Cannot create SP, [%d] %s.\n", mysqli_errno($link), mysqli_error($link));
61: }
62:
63: mysqli_close($link);
64: print "done!";
65: ?>
66: --CLEAN--
67: <?php
68: require_once("connect.inc");
69: if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
70: printf("[c001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
71:
72: @mysqli_query($link, 'DROP PROCEDURE IF EXISTS p');
73:
74: mysqli_close($link);
75: ?>
76: --XFAIL--
77: Unsupported and undefined, under development
78: --EXPECTF--
79: [008] More results: %s
80: [009] Next results: %s
81: done!
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>