mirror of
https://github.com/php/php-src.git
synced 2024-10-21 00:12:34 +00:00
b0b510f6e6
No "real" changes.
111 lines
2.5 KiB
PHP
111 lines
2.5 KiB
PHP
--TEST--
|
|
mysqli connect
|
|
--SKIPIF--
|
|
<?php
|
|
require_once('skipif.inc');
|
|
require_once('skipifconnectfailure.inc');
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
include "connect.inc";
|
|
|
|
$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket);
|
|
|
|
mysqli_query($link, "SET sql_mode=''");
|
|
|
|
if (!mysqli_query($link,"DROP TABLE IF EXISTS test_bind_result"))
|
|
printf("[001] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
|
|
|
|
$rc = @mysqli_query($link,"CREATE TABLE test_bind_result(
|
|
c1 date,
|
|
c2 time,
|
|
c3 timestamp(14),
|
|
c4 year,
|
|
c5 datetime,
|
|
c6 timestamp(4),
|
|
c7 timestamp(6)) ENGINE=" . $engine);
|
|
|
|
/*
|
|
Seems that not all MySQL 6.0 installations use defaults that ignore the display widths.
|
|
From the manual:
|
|
From MySQL 4.1.0 on, TIMESTAMP display format differs from that of earlier MySQL releases:
|
|
[...]
|
|
Display widths (used as described in the preceding section) are no longer supported.
|
|
In other words, for declarations such as TIMESTAMP(2), TIMESTAMP(4), and so on,
|
|
the display width is ignored.
|
|
[...]
|
|
*/
|
|
if (!$rc)
|
|
$rc = @mysqli_query($link,"CREATE TABLE test_bind_result(
|
|
c1 date,
|
|
c2 time,
|
|
c3 timestamp,
|
|
c4 year,
|
|
c5 datetime,
|
|
c6 timestamp,
|
|
c7 timestamp) ENGINE=" . $engine);
|
|
|
|
if (!$rc)
|
|
printf("[002] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
|
|
|
|
$rc = mysqli_query($link, "INSERT INTO test_bind_result VALUES(
|
|
'2002-01-02',
|
|
'12:49:00',
|
|
'2002-01-02 17:46:59',
|
|
2010,
|
|
'2010-07-10',
|
|
'2020','1999-12-29')");
|
|
if (!$rc)
|
|
printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
|
|
|
|
$stmt = mysqli_prepare($link, "SELECT c1, c2, c3, c4, c5, c6, c7 FROM test_bind_result");
|
|
mysqli_bind_result($stmt, $c1, $c2, $c3, $c4, $c5, $c6, $c7);
|
|
mysqli_execute($stmt);
|
|
mysqli_fetch($stmt);
|
|
|
|
$test = array($c1,$c2,$c3,$c4,$c5,$c6,$c7);
|
|
|
|
var_dump($test);
|
|
|
|
mysqli_stmt_close($stmt);
|
|
mysqli_query($link, "DROP TABLE IF EXISTS test_bind_result");
|
|
mysqli_close($link);
|
|
print "done!";
|
|
?>
|
|
--EXPECTF--
|
|
array(7) {
|
|
[0]=>
|
|
string(10) "2002-01-02"
|
|
[1]=>
|
|
string(8) "12:49:00"
|
|
[2]=>
|
|
string(19) "2002-01-02 17:46:59"
|
|
[3]=>
|
|
int(2010)
|
|
[4]=>
|
|
string(19) "2010-07-10 00:00:00"
|
|
[5]=>
|
|
string(19) "0000-00-00 00:00:00"
|
|
[6]=>
|
|
string(19) "1999-12-29 00:00:00"
|
|
}
|
|
done!
|
|
--UEXPECTF--
|
|
array(7) {
|
|
[0]=>
|
|
unicode(10) "2002-01-02"
|
|
[1]=>
|
|
unicode(8) "12:49:00"
|
|
[2]=>
|
|
unicode(19) "2002-01-02 17:46:59"
|
|
[3]=>
|
|
int(2010)
|
|
[4]=>
|
|
unicode(19) "2010-07-10 00:00:00"
|
|
[5]=>
|
|
unicode(19) "0000-00-00 00:00:00"
|
|
[6]=>
|
|
unicode(19) "1999-12-29 00:00:00"
|
|
}
|
|
done!
|