summaryrefslogtreecommitdiff
path: root/ext/pdo/tests/bug_72368.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pdo/tests/bug_72368.phpt')
-rw-r--r--ext/pdo/tests/bug_72368.phpt43
1 files changed, 43 insertions, 0 deletions
diff --git a/ext/pdo/tests/bug_72368.phpt b/ext/pdo/tests/bug_72368.phpt
new file mode 100644
index 0000000000..db8d4993a8
--- /dev/null
+++ b/ext/pdo/tests/bug_72368.phpt
@@ -0,0 +1,43 @@
+--TEST--
+PDO Common: Bug #72368 (PdoStatement->execute() fails but does not throw an exception)
+--SKIPIF--
+<?php # vim:ft=php
+if (!extension_loaded('pdo')) die('skip');
+$dir = getenv('REDIR_TEST_DIR');
+if (false == $dir) die('skip no driver');
+require_once $dir . 'pdo_test.inc';
+PDOTest::skip();
+?>
+--FILE--
+<?php
+if (getenv('REDIR_TEST_DIR') === false) putenv('REDIR_TEST_DIR='.dirname(__FILE__) . '/../../pdo/tests/');
+require_once getenv('REDIR_TEST_DIR') . 'pdo_test.inc';
+$db = PDOTest::factory();
+$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
+
+$params = [":bar" => 1];
+$sql = "SELECT 1";
+
+$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
+try {
+ $stmt = $db->prepare($sql);
+ var_dump($stmt->execute($params));
+} catch (PDOException $e) {
+ var_dump('ERR');
+}
+
+
+$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, true);
+try {
+ $stmt = $db->prepare($sql);
+ var_dump($stmt->execute($params));
+} catch (PDOException $e) {
+ var_dump('ERR');
+}
+
+?>
+===DONE===
+--EXPECT--
+string(3) "ERR"
+string(3) "ERR"
+===DONE===