решил попробовать БД sqlite, установил из репов, все работает, на запрос из терминала отвечает:
~$ sqlite
SQLite version 2.8.17
Enter ".help" for instructions
sqlite>
когда пытаюсь соединиться с ней из php, происходит следующее:
$db = sqlite_open("test.db");
Fatal error: Call to undefined function sqlite_open() in /home/conformist/one.local/www/db.php on line 3
в phpinfo() по sqlite написано следующее:
Additional .ini files parsed /etc/php5/apache2/conf.d/10-pdo.ini, /etc/php5/apache2/conf.d/20-mysql.ini, /etc/php5/apache2/conf.d/20-mysqli.ini, /etc/php5/apache2/conf.d/20-pdo_mysql.ini, /etc/php5/apache2/conf.d/20-pdo_sqlite.ini, /etc/php5/apache2/conf.d/20-sqlite3.ini
PDO drivers mysql, sqlite (enabled)
SQLite Library 3.7.13 (enabled)
SQLite3 module version 0.7 (enabled)
SQLite Library 3.7.13 (enabled)
sqlite3.extension_dir no value no value
нашел тестовый код:
<?php
/*** make it or break it ***/
error_reporting(E_ALL);
try
{
$sql = "CREATE TABLE animals (
animal_id INTEGER PRIMARY KEY,
animal_name TEXT NOT NULL,
animal_type TEXT UNIQUE NOT NULL,
last_updated TIMESTAMP NOT NULL
)";
/*** create the database file in /tmp ***/
$dbh = new PDO("sqlite:/tmp/animals.sqlite");
/*** set all errors to excptions ***/
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
/*** run the create table query ***/
$dbh->query($sql);
echo 'done';
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
отвечает: done.
пробовал дописать в php.ini
extension=pdo_sqlite.so
extension=sqlite.so
не помогло.
~$ uname -a
OS - Linux myWork 3.2.0-4-686-pae #1 SMP Debian 3.2.35-2 i686 GNU/Linux
~$ apache2 -v
Server version: Apache/2.2.22 (Debian)
Server built: Oct 31 2012 00:00:06
~$ php5 -v
PHP 5.4.4-14 (cli) (built: Mar 4 2013 15:49:04)
Copyright © 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright © 1998-2012 Zend Technologies
не знаю, что делать, заранее благодарен за помощь!