diff options
| author | Ulf Wendel <uw@php.net> | 2009-09-09 17:03:03 +0000 |
|---|---|---|
| committer | Ulf Wendel <uw@php.net> | 2009-09-09 17:03:03 +0000 |
| commit | 5254c6f37284007efd17acedc2036a3b0f1d542e (patch) | |
| tree | 7141da211c789c02893dc245e24412ac30c4b1f6 /ext/mysql/tests | |
| parent | 5b709c4718e2138171d8c6d9f7ca18ee4f3efb78 (diff) | |
| download | php-git-5254c6f37284007efd17acedc2036a3b0f1d542e.tar.gz | |
Next attempt to fix http://bugs.php.net/bug.php?id=48745. Patch by Andrey.
Diffstat (limited to 'ext/mysql/tests')
| -rw-r--r-- | ext/mysql/tests/mysql_fetch_field.phpt | 12 | ||||
| -rw-r--r-- | ext/mysql/tests/mysql_list_fields.phpt | 49 |
2 files changed, 44 insertions, 17 deletions
diff --git a/ext/mysql/tests/mysql_fetch_field.phpt b/ext/mysql/tests/mysql_fetch_field.phpt index f9767c82b7..65c44edc5e 100644 --- a/ext/mysql/tests/mysql_fetch_field.phpt +++ b/ext/mysql/tests/mysql_fetch_field.phpt @@ -124,9 +124,16 @@ require_once('skipifconnectfailure.inc'); printf("[017] [%d] %s\n", mysql_errno($link), mysql_error($link)); } $res = mysql_list_fields($db, 'test'); - while ($tmp = mysql_fetch_field($res)) - if ($tmp->name == 'id') + $found = false; + while ($tmp = mysql_fetch_field($res)) { + if ($tmp->name == 'id') { + printf("Fetch field from mysql_list_fields result set.\n"); + $found = true; var_dump($tmp); + } + } + if (!$found) + printf("[018] mysqli_list_fields result set processing has failed.\n"); mysql_free_result($res); @@ -227,6 +234,7 @@ object(stdClass)#%d (13) { [%u|b%"zerofill"]=> int(0) } +Fetch field from mysql_list_fields result set. object(stdClass)#%d (13) { [%u|b%"name"]=> %unicode|string%(2) "id" diff --git a/ext/mysql/tests/mysql_list_fields.phpt b/ext/mysql/tests/mysql_list_fields.phpt index dc3a3417d3..e0b3fd5e39 100644 --- a/ext/mysql/tests/mysql_list_fields.phpt +++ b/ext/mysql/tests/mysql_list_fields.phpt @@ -2,39 +2,46 @@ mysql_list_fields() --SKIPIF-- <?php -require_once('skipif.inc'); -require_once('skipifconnectfailure.inc'); +require_once 'skipif.inc'; +require_once 'skipifconnectfailure.inc'; ?> --FILE-- <?php -include_once "connect.inc"; +require_once 'connect.inc'; $tmp = NULL; $link = NULL; -// This will implicitly try to connect, and we don't want it -//if (false !== ($tmp = mysql_list_fields($link, $link))) -// printf("[002] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp); - -require('table.inc'); +require 'table.inc'; if (!$res = mysql_list_fields($db, 'test', $link)) printf("[003] [%d] %s\n", mysql_errno($link), mysql_error($link)); if (2 !== ($num = mysql_num_fields($res))) - printf("[004] Expecting two fields, got %d. [%d] %s\n", $num, mysql_errno($link), mysql_error($link)); + printf("[004] Expecting two fields from 'test', got %d. [%d] %s\n", $num, mysql_errno($link), mysql_error($link)); mysql_free_result($res); -if (!mysql_query("DROP TABLE IF EXISTS test2", $link) || - !mysql_query("CREATE TABLE test2(id INT)", $link)) +if (!mysql_query("DROP TABLE IF EXISTS test2", $link)) printf("[005] [%d] %s\n", mysql_errno($link), mysql_error($link)); -if (!$res = mysql_list_fields($db, 'test%', $link)) +if (!$res = @mysql_list_fields($db, 'test2', $link)) printf("[006] [%d] %s\n", mysql_errno($link), mysql_error($link)); -if (3 !== ($num = mysql_num_fields($res))) - printf("[007] Expecting 3 fields from test and test2, got %d. [%d] %s\n", $num, mysql_errno($link), mysql_error($link)); +if (!$res = mysql_list_fields($db, 'test', $link)) + printf("[007] [%d] %s\n", mysql_errno($link), mysql_error($link)); + +if (2 !== ($num = mysql_num_fields($res))) + printf("[008] Expecting 2 fields from 'test', got %d. [%d] %s\n", $num, mysql_errno($link), mysql_error($link)); + +var_dump(mysql_fetch_assoc($res)); +for ($field_offset = 0; $field_offset < mysql_num_fields($res); $field_offset++) { + printf("Field Offset %d\n", $field_offset); + printf("mysql_field_flags(): %s\n", mysql_field_flags($res, $field_offset)); + printf("mysql_field_len(): %s\n", mysql_field_len($res, $field_offset)); + printf("mysql_field_name(): %s\n", mysql_field_name($res, $field_offset)); + printf("mysql_field_type(): %s\n", mysql_field_type($res, $field_offset)); +} mysql_free_result($res); mysql_close($link); @@ -43,7 +50,7 @@ print "done!"; ?> --CLEAN-- <?php -require_once('connect.inc'); +require_once 'connect.inc'; if (!$link = my_mysql_connect($host, $user, $passwd, $db, $port, $socket)) printf("[c001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n", $host, $user, $db, $port, $socket); @@ -57,4 +64,16 @@ if (!mysql_query("DROP TABLE IF EXISTS test2", $link)) mysql_close($link); ?> --EXPECTF-- +[006] [%d] %s +bool(false) +Field Offset 0 +mysql_field_flags()%s +mysql_field_len(): 11 +mysql_field_name(): id +mysql_field_type(): int +Field Offset 1 +mysql_field_flags()%s +mysql_field_len(): 1 +mysql_field_name(): label +mysql_field_type(): string done! |
