bug_72368.phpt 1004 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. --TEST--
  2. PDO Common: Bug #72368 (PdoStatement->execute() fails but does not throw an exception)
  3. --EXTENSIONS--
  4. pdo
  5. --SKIPIF--
  6. <?php # vim:ft=php
  7. $dir = getenv('REDIR_TEST_DIR');
  8. if (false == $dir) die('skip no driver');
  9. require_once $dir . 'pdo_test.inc';
  10. PDOTest::skip();
  11. ?>
  12. --FILE--
  13. <?php
  14. if (getenv('REDIR_TEST_DIR') === false) putenv('REDIR_TEST_DIR='.dirname(__FILE__) . '/../../pdo/tests/');
  15. require_once getenv('REDIR_TEST_DIR') . 'pdo_test.inc';
  16. $db = PDOTest::factory();
  17. $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  18. $params = [":bar" => 1];
  19. $sql = "SELECT 1";
  20. $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
  21. try {
  22. $stmt = $db->prepare($sql);
  23. var_dump($stmt->execute($params));
  24. } catch (PDOException $e) {
  25. var_dump('ERR');
  26. }
  27. $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, true);
  28. try {
  29. $stmt = $db->prepare($sql);
  30. var_dump($stmt->execute($params));
  31. } catch (PDOException $e) {
  32. var_dump('ERR');
  33. }
  34. ?>
  35. ===DONE===
  36. --EXPECT--
  37. string(3) "ERR"
  38. string(3) "ERR"
  39. ===DONE===