gh9032.phpt 598 B

123456789101112131415161718192021222324
  1. --TEST--
  2. SQLite3 authorizer crashes on NULL values
  3. --EXTENSIONS--
  4. pdo_sqlite
  5. --INI--
  6. open_basedir=.
  7. --FILE--
  8. <?php
  9. $db = new PDO("sqlite::memory:", null, null, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
  10. $db->exec('attach database \':memory:\' AS "db1"');
  11. var_dump($db->exec('create table db1.r (id int)'));
  12. try {
  13. $st = $db->prepare('attach database :a AS "db2"');
  14. $st->execute([':a' => ':memory:']);
  15. var_dump($db->exec('create table db2.r (id int)'));
  16. } catch (PDOException $ex) {
  17. echo $ex->getMessage(), PHP_EOL;
  18. }
  19. ?>
  20. --EXPECT--
  21. int(0)
  22. SQLSTATE[HY000]: General error: 23 not authorized