bug81037.phpt 847 B

123456789101112131415161718192021222324252627282930313233343536
  1. --TEST--
  2. Bug #81037 PDO discards error message text from prepared statement
  3. --EXTENSIONS--
  4. pdo
  5. pdo_mysql
  6. --SKIPIF--
  7. <?php
  8. require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc');
  9. MySQLPDOTest::skip();
  10. ?>
  11. --FILE--
  12. <?php
  13. require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc');
  14. $pdo = MySQLPDOTest::factory();
  15. $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  16. $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
  17. MySQLPDOTest::createTestTable($pdo);
  18. $sql = "SELECT id FROM test WHERE label = :par";
  19. $stmt = $pdo->prepare($sql);
  20. try {
  21. $stmt->execute();
  22. } catch (PDOException $e) {
  23. echo $e->getMessage(), "\n";
  24. }
  25. $data = $stmt->fetchAll(PDO::FETCH_ASSOC);
  26. ?>
  27. --CLEAN--
  28. <?php
  29. require __DIR__ . '/mysql_pdo_test.inc';
  30. MySQLPDOTest::dropTestTable();
  31. ?>
  32. --EXPECT--
  33. SQLSTATE[HY093]: Invalid parameter number