1--TEST--
2mysqli insert (bind_param + bind_result) long char/text types
3--EXTENSIONS--
4mysqli
5--SKIPIF--
6<?php
7require_once dirname(__DIR__) . "/test_setup/test_helpers.inc";
8mysqli_check_skip_test();
9?>
10--FILE--
11<?php
12require_once dirname(__DIR__) . "/test_setup/test_helpers.inc";
13
14    $link = default_mysqli_connect();
15
16    mysqli_query($link,"CREATE TABLE insert_bind_char_text_long(c1 char(10), c2 text)");
17
18
19    $stmt = mysqli_prepare($link, "INSERT INTO insert_bind_char_text_long VALUES (?,?)");
20    mysqli_stmt_bind_param($stmt, "ss", $a1, $a2);
21
22    $a1 = "1234567890";
23    $a2 = str_repeat("A1", 32000);
24
25    mysqli_stmt_execute($stmt);
26    mysqli_stmt_close($stmt);
27
28    $stmt = mysqli_prepare($link, "SELECT * FROM insert_bind_char_text_long");
29    mysqli_stmt_bind_result($stmt, $c1, $c2);
30    mysqli_stmt_execute($stmt);
31    mysqli_stmt_fetch($stmt);
32
33    $test[] = $c1;
34    $test[] = ($a2 == $c2) ? "32K String ok" : "32K String failed";
35
36    var_dump($test);
37
38    mysqli_stmt_close($stmt);
39    mysqli_close($link);
40
41    print "done!";
42?>
43--CLEAN--
44<?php
45require_once dirname(__DIR__) . "/test_setup/test_helpers.inc";
46tear_down_table_on_default_connection('insert_bind_char_text_long');
47?>
48--EXPECTF--
49array(2) {
50  [0]=>
51  string(10) "1234567890"
52  [1]=>
53  %s(13) "32K String ok"
54}
55done!
56