プロが教えるわが家の防犯対策術!

こんばんは

何をどうやっても進まないのでここで質問させてください。
Windows 8にwamp (Apache 2.2.22, PHP 5.4.3) を入れています。
SQLite3を使いたいのですが、sqlite_open 関数に対して「undefined function」というエラーが出てしまいます。

php.ini の内容は次のようになっています。
;ここから
extension_dir = "c:/wamp/bin/php/php5.4.3/ext/"
(中略)
extension=php_pdo_sqlite.dll
;extension=php_sqlite.dll
extension=php_sqlite3.dll
(中略)
[sqlite]
; http://php.net/sqlite.assoc-case
;sqlite.assoc_case = 0

[sqlite3]
sqlite3.extension_dir = "c:/wamp/bin/php/php5.4.3/ext/"

;ここまで

実際、エクステンションディレクトリには
php_pdo_sqlite.dll
php_sqlite.dll
php_sqlite3.dll
があります。

phpinfo(); では

PDO drivers:mysql, sqlite
SQLite Library:3.7.7.1
[sqlite3]
SQLite3 support:enabled
SQLite3 module version:0.7
SQLite Library:3.7.7.1
sqlite3.extension_dir:c:/wamp/bin/php/php5.4.3/ext/


いったい何が行けないのでしょうか、iniの値を変えるとphpinfo()も変わるので誤った設定ファイルをいじっているのではないと思います。

バージョンなどは冒頭に記載しています。
よろしくお願いします。

A 回答 (1件)

>;extension=php_sqlite.dll


エラーは、上記行の先頭にコメントアウトがあるせいだとは思うけど、
sqlite_open関数群は、sqlite2用です、SQLite3のデータファイルは扱えません。
SQLite3 を利用するなら、PDO または、SQLite3 クラスしか有りません。
    • good
    • 0
この回答へのお礼

ありがとうございます。そのdllをコメントアウトしてもできませんでした。

というか、sqlite2の巻数だったんですね、アホでした。
SQLite3のクラスを作ってそこからアクセスちゃんとできました。
うれしくて泣きそうです><

お礼日時:2014/02/09 22:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!