pecl_bug_5780.phpt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. --TEST--
  2. PDO MySQL PECL Bug #5780 (Failure to produce an error when one is expected)
  3. --SKIPIF--
  4. <?php # vim:ft=php:
  5. if (!extension_loaded('pdo') || !extension_loaded('pdo_mysql')) die('skip not loaded');
  6. require dirname(__FILE__) . '/config.inc';
  7. require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc';
  8. PDOTest::skip();
  9. ?>
  10. --FILE--
  11. <?php
  12. require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc';
  13. $db = PDOTest::test_factory(dirname(__FILE__). '/common.phpt');
  14. $db->exec("CREATE TABLE test (login varchar(32) NOT NULL, data varchar(64) NOT NULL)");
  15. $db->exec("CREATE TABLE test2 (login varchar(32) NOT NULL, password varchar(64) NOT NULL)");
  16. $db->exec("INSERT INTO test2 (login, password) VALUES ('testing', 'testing')");
  17. $db->exec("INSERT INTO test2 (login, password) VALUES ('test2', 'testpw2')");
  18. $logstmt = $db->prepare('INSERT INTO test (login, data) VALUES (:var1, :var2)');
  19. $authstmt = $db->prepare('SELECT * FROM test2 WHERE login = :varlog AND password = :varpass');
  20. $authstmt->execute(array(':varlog' => 'testing', ':varpass' => 'testing'));
  21. var_dump($authstmt->fetch(PDO::FETCH_NUM));
  22. @var_dump($logstmt->execute(array(':var1' => 'test1', ':var2' => 'test2')));
  23. $info = $logstmt->errorInfo();
  24. unset($info[2]);
  25. var_dump($info);
  26. ?>
  27. --CLEAN--
  28. <?php
  29. require dirname(__FILE__) . '/mysql_pdo_test.inc';
  30. $db = MySQLPDOTest::factory();
  31. $db->exec('DROP TABLE IF EXISTS test');
  32. $db->exec('DROP TABLE IF EXISTS test2');
  33. ?>
  34. --EXPECT--
  35. array(2) {
  36. [0]=>
  37. string(7) "testing"
  38. [1]=>
  39. string(7) "testing"
  40. }
  41. bool(true)
  42. array(2) {
  43. [0]=>
  44. string(5) "00000"
  45. [1]=>
  46. NULL
  47. }