1--TEST--
2mysqli_real_escape_string() - euckr
3--EXTENSIONS--
4mysqli
5--SKIPIF--
6<?php
7
8require_once 'skipifconnectfailure.inc';
9
10if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
11    die(sprintf("skip Cannot connect to MySQL, [%d] %s\n",
12        mysqli_connect_errno(), mysqli_connect_error()));
13}
14if (!mysqli_set_charset($link, 'euckr'))
15    die(sprintf("skip Cannot set charset 'euckr'"));
16mysqli_close($link);
17?>
18--FILE--
19<?php
20    require_once 'connect.inc';
21    if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
22{
23        printf("[001] Cannot connect to the server using host=%s, user=%s,
24passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
25$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
26    }
27
28    if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
29        printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
30mysqli_error($link));
31    }
32
33    if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
34KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=euckr")) {
35        printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
36mysqli_error($link));
37    }
38
39    var_dump(mysqli_set_charset($link, "euckr"));
40
41    if ('�Ǵ뼺\\\\�Ǵ뼺' !== ($tmp = mysqli_real_escape_string($link, '�Ǵ뼺\\�Ǵ뼺')))
42        printf("[004] Expecting \\\\, got %s\n", $tmp);
43
44    if ('�Ǵ뼺\"�Ǵ뼺' !== ($tmp = mysqli_real_escape_string($link, '�Ǵ뼺"�Ǵ뼺')))
45        printf("[005] Expecting \", got %s\n", $tmp);
46
47    if ("�Ǵ뼺\'�Ǵ뼺" !== ($tmp = mysqli_real_escape_string($link, "�Ǵ뼺'�Ǵ뼺")))
48        printf("[006] Expecting ', got %s\n", $tmp);
49
50    if ("�Ǵ뼺\\n�Ǵ뼺" !== ($tmp = mysqli_real_escape_string($link, "�Ǵ뼺\n�Ǵ뼺")))
51        printf("[007] Expecting \\n, got %s\n", $tmp);
52
53    if ("�Ǵ뼺\\r�Ǵ뼺" !== ($tmp = mysqli_real_escape_string($link, "�Ǵ뼺\r�Ǵ뼺")))
54        printf("[008] Expecting \\r, got %s\n", $tmp);
55
56    if ("�Ǵ뼺\\0�Ǵ뼺" !== ($tmp = mysqli_real_escape_string($link, "�Ǵ뼺" . chr(0) . "�Ǵ뼺")))
57        printf("[009] Expecting %s, got %s\n", "�Ǵ뼺\\0�Ǵ뼺", $tmp);
58
59    var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '��')"));
60
61    mysqli_close($link);
62    print "done!";
63?>
64--CLEAN--
65<?php
66    require_once 'clean_table.inc';
67?>
68--EXPECT--
69bool(true)
70bool(true)
71done!
72