summaryrefslogtreecommitdiff
path: root/ext/mysqli
diff options
context:
space:
mode:
authorUlf Wendel <uw@php.net>2010-06-08 13:05:49 +0000
committerUlf Wendel <uw@php.net>2010-06-08 13:05:49 +0000
commit7b278870915b79749e11f66989e9eaf8b29e692a (patch)
tree24092211f258c3de934bab4037502a82a0189002 /ext/mysqli
parent85140991bebc4e544621cb3f4c269fd975053983 (diff)
downloadphp-git-7b278870915b79749e11f66989e9eaf8b29e692a.tar.gz
More SQL strict mode updates
Diffstat (limited to 'ext/mysqli')
-rw-r--r--ext/mysqli/tests/mysqli_fetch_field_types.phpt16
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_big5.phpt45
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_eucjpms.phpt25
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_euckr.phpt22
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_gb2312.phpt22
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_gbk.phpt22
-rw-r--r--ext/mysqli/tests/mysqli_real_escape_string_unicode.phpt4
-rw-r--r--ext/mysqli/tests/mysqli_stmt_get_warnings.phpt16
8 files changed, 152 insertions, 20 deletions
diff --git a/ext/mysqli/tests/mysqli_fetch_field_types.phpt b/ext/mysqli/tests/mysqli_fetch_field_types.phpt
index 5d7e5ebc8d..98332f4a17 100644
--- a/ext/mysqli/tests/mysqli_fetch_field_types.phpt
+++ b/ext/mysqli/tests/mysqli_fetch_field_types.phpt
@@ -17,16 +17,20 @@ require_once('skipifconnectfailure.inc');
return false;
}
- $sql = sprintf("CREATE TABLE test(id %s)", $sql_type);
- if (!mysqli_query($link, $sql)) {
- printf("[002] %s, [%d] %s\n", $sql_type,
+ $create = sprintf("CREATE TABLE test(id %s)", $sql_type);
+ if (!mysqli_query($link, $create)) {
+ printf("[002] '%s' - '%s', [%d] %s\n", $sql_type, $create,
mysqli_errno($link), mysqli_error($link));
return false;
}
- $sql = sprintf("INSERT INTO test(id) VALUES ('%s')", $php_value);
+ if (is_string($php_value))
+ $sql = sprintf("INSERT INTO test(id) VALUES ('%s')", $php_value);
+ else
+ $sql = sprintf("INSERT INTO test(id) VALUES (%s)", $php_value);
+
if (!mysqli_query($link, $sql)) {
- printf("[003] %s, [%d] %s\n", $sql_type,
+ printf("[003] '%s' - '%s' - '%s', [%d] %s\n", $sql_type, $create, $sql,
mysqli_errno($link), mysqli_error($link));
return false;
}
@@ -85,7 +89,7 @@ require_once('skipifconnectfailure.inc');
MYSQLI_TYPE_VAR_STRING => array("VARCHAR(32768)", 'varchar'),
MYSQLI_TYPE_STRING => 'MYSQLI_TYPE_STRING - TODO add testing',
MYSQLI_TYPE_STRING => array('CHAR(1)', 'a'),
- MYSQLI_TYPE_STRING => array("SET('I', 'smash', 'the')", 'Will be converted to string although it is a SET...'),
+ MYSQLI_TYPE_STRING => array("SET('I', 'smash', 'the')", 'smash'),
MYSQLI_TYPE_NULL => 'MYSQLI_TYPE_NULL - TODO add testing',
MYSQLI_TYPE_NEWDATE => 'MYSQLI_TYPE_NEWDATE - TODO add testing',
MYSQLI_TYPE_INTERVAL => 'MYSQLI_TYPE_INTERVAL - TODO add testing',
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_big5.phpt b/ext/mysqli/tests/mysqli_real_escape_string_big5.phpt
index c2cf980e28..b177c1fd5b 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_big5.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_big5.phpt
@@ -20,35 +20,62 @@ mysqli_close($link);
?>
--FILE--
<?php
-
require_once("connect.inc");
- require_once('table.inc');
+
+ if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
+{
+ printf("[001] Cannot connect to the server using host=%s, user=%s,
+passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
+$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
+ }
+
+ if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
+ printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
+
+ if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
+KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=big5")) {
+ printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
var_dump(mysqli_set_charset($link, "big5"));
- if ('找到以下內容\\\\找到以下內容' !== ($tmp = mysqli_real_escape_string($link, '找到以下內容\\找到以下內容')))
+ if ('找到以下內容\\\\找到以下內容' !== ($tmp = mysqli_real_escape_string($link,
+'找到以下內容\\找到以下內容')))
printf("[004] Expecting \\\\, got %s\n", $tmp);
- if ('找到以下內容\"找到以下內容' !== ($tmp = mysqli_real_escape_string($link, '找到以下內容"找到以下內容')))
+ if ('找到以下內容\"找到以下內容' !== ($tmp = mysqli_real_escape_string($link,
+'找到以下內容"找到以下內容')))
printf("[005] Expecting \", got %s\n", $tmp);
- if ("找到以下內容\'找到以下內容" !== ($tmp = mysqli_real_escape_string($link, "找到以下內容'找到以下內容")))
+ if ("找到以下內容\'找到以下內容" !== ($tmp = mysqli_real_escape_string($link,
+"找到以下內容'找到以下內容")))
printf("[006] Expecting ', got %s\n", $tmp);
- if ("找到以下內容\\n找到以下內容" !== ($tmp = mysqli_real_escape_string($link, "找到以下內容\n找到以下內容")))
+ if ("找到以下內容\\n找到以下內容" !== ($tmp = mysqli_real_escape_string($link,
+"找到以下內容\n找到以下內容")))
printf("[007] Expecting \\n, got %s\n", $tmp);
- if ("找到以下內容\\r找到以下內容" !== ($tmp = mysqli_real_escape_string($link, "找到以下內容\r找到以下內容")))
+ if ("找到以下內容\\r找到以下內容" !== ($tmp = mysqli_real_escape_string($link,
+"找到以下內容\r找到以下內容")))
printf("[008] Expecting \\r, got %s\n", $tmp);
- if ("找到以下內容\\0找到以下內容" !== ($tmp = mysqli_real_escape_string($link, "找到以下內容" . chr(0) . "找到以下內容")))
+ if ("找到以下內容\\0找到以下內容" !== ($tmp = mysqli_real_escape_string($link, "找到以下內容"
+. chr(0) . "找到以下內容")))
printf("[009] Expecting %s, got %s\n", "找到以下內容\\0找到以下內容", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '找')"));
+ var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100,
+'找')"));
mysqli_close($link);
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
bool(true)
bool(true)
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_eucjpms.phpt b/ext/mysqli/tests/mysqli_real_escape_string_eucjpms.phpt
index 09f8099c6e..cf4afb6f6b 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_eucjpms.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_eucjpms.phpt
@@ -20,8 +20,25 @@ mysqli_close($link);
?>
--FILE--
<?php
- require_once("connect.inc");
- require_once('table.inc');
+require_once("connect.inc");
+
+ if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
+{
+ printf("[001] Cannot connect to the server using host=%s, user=%s,
+passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
+$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
+ }
+
+ if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
+ printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
+
+ if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
+KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=eucjpms")) {
+ printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
var_dump(mysqli_set_charset($link, "eucjpms"));
@@ -48,6 +65,10 @@ mysqli_close($link);
mysqli_close($link);
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
bool(true)
bool(true)
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_euckr.phpt b/ext/mysqli/tests/mysqli_real_escape_string_euckr.phpt
index 6384d9fca7..7ac7497b80 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_euckr.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_euckr.phpt
@@ -21,7 +21,23 @@ mysqli_close($link);
--FILE--
<?php
require_once("connect.inc");
- require_once('table.inc');
+ if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
+{
+ printf("[001] Cannot connect to the server using host=%s, user=%s,
+passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
+$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
+ }
+
+ if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
+ printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
+
+ if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
+KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=euckr")) {
+ printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
var_dump(mysqli_set_charset($link, "euckr"));
@@ -48,6 +64,10 @@ mysqli_close($link);
mysqli_close($link);
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
bool(true)
bool(true)
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_gb2312.phpt b/ext/mysqli/tests/mysqli_real_escape_string_gb2312.phpt
index 0994b49fbd..b93d8154fa 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_gb2312.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_gb2312.phpt
@@ -22,7 +22,23 @@ mysqli_close($link);
<?php
require_once("connect.inc");
- require_once('table.inc');
+ if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
+{
+ printf("[001] Cannot connect to the server using host=%s, user=%s,
+passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
+$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
+ }
+
+ if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
+ printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
+
+ if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
+KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=gb2312")) {
+ printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
var_dump(mysqli_set_charset($link, "gb2312"));
@@ -49,6 +65,10 @@ mysqli_close($link);
mysqli_close($link);
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
bool(true)
bool(true)
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_gbk.phpt b/ext/mysqli/tests/mysqli_real_escape_string_gbk.phpt
index 7965abf9d3..2fd1121a76 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_gbk.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_gbk.phpt
@@ -24,7 +24,23 @@ mysqli_close($link);
<?php
require_once("connect.inc");
- require_once('table.inc');
+ if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
+{
+ printf("[001] Cannot connect to the server using host=%s, user=%s,
+passwd=***, dbname=%s, port=%s, socket=%s - [%d] %s\n", $host, $user, $db,
+$port, $socket, mysqli_connect_errno(), mysqli_connect_error());
+ }
+
+ if (!mysqli_query($link, 'DROP TABLE IF EXISTS test')) {
+ printf("Failed to drop old test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
+
+ if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY
+KEY(id)) ENGINE=' . $engine . " DEFAULT CHARSET=gbk")) {
+ printf("Failed to create test table: [%d] %s\n", mysqli_errno($link),
+mysqli_error($link));
+ }
var_dump(mysqli_set_charset($link, "gbk"));
@@ -51,6 +67,10 @@ mysqli_close($link);
mysqli_close($link);
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
bool(true)
bool(true)
diff --git a/ext/mysqli/tests/mysqli_real_escape_string_unicode.phpt b/ext/mysqli/tests/mysqli_real_escape_string_unicode.phpt
index 79309923c4..72d171f9e5 100644
--- a/ext/mysqli/tests/mysqli_real_escape_string_unicode.phpt
+++ b/ext/mysqli/tests/mysqli_real_escape_string_unicode.phpt
@@ -79,6 +79,10 @@ require_once('skipifconnectfailure.inc');
print "done!";
?>
+--CLEAN--
+<?php
+ require_once("clean_table.inc");
+?>
--EXPECTF--
Warning: mysqli_real_escape_string(): Couldn't fetch mysqli in %s on line %d
done! \ No newline at end of file
diff --git a/ext/mysqli/tests/mysqli_stmt_get_warnings.phpt b/ext/mysqli/tests/mysqli_stmt_get_warnings.phpt
index b8ca14eaff..2b0e150ded 100644
--- a/ext/mysqli/tests/mysqli_stmt_get_warnings.phpt
+++ b/ext/mysqli/tests/mysqli_stmt_get_warnings.phpt
@@ -5,6 +5,22 @@ mysqli_stmt_get_warnings() - TODO
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
+
+require_once("connect.inc");
+
+if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
+ die(sprintf("skip Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
+ $host, $user, $db, $port, $socket));
+}
+
+if (!mysqli_query($link, "DROP TABLE IF EXISTS test") ||
+ !mysqli_query($link, "CREATE TABLE test(id SMALLINT)"))
+ die(sprintf("skip [%d] %s\n", $link->errno, $link->error));
+
+if (!@mysqli_query("INSERT INTO test(id) VALUES (100001)"))
+ die("skip Strict sql mode seems to be active. We won't get a warning to check for.");
+
+mysqli_query($link, "DROP TABLE IF EXISTS test");
?>
--FILE--
<?php