از اونجا که شاید خوانندهای داشته باشیم که از SQLite چیزی ندونه و من برنامه نویسهای زیادی را دیدم که اطلاعاتی نداشتند توضیح میدم که SQLite یک پایگاه داده مبتنی بر فایل هست که همه تنظیمات و اطلاعات مربوط به پایگاه داده توی یک فایل ذخیره میشه و قابلیت جابجایی داره بدون نیاز به نصب سرویس دهنده. دقیقاً شبیه به MS Access شرکت مایکروسافت البته با قدرت بسیار بیشتر و در ضمن سورس باز بودن.
برای یک پروژه تصمیم به استفاده از SQLite گرفتم و پس از بررسی PHPINFO متوجه شدم که نصب نیست و باید نصبش کنم. جالب اینجا بود که خیلی از سایتها و منابع توی اینترنت فقط گفته بودند که باید بسته php5-sqlite را نصب کنیم و آپاچی را ریست کنیم. اما پس از انجام کار متوجه شدم که PHPINFO همچنان نشانه ای از sqlite نداره. پس از بررسی های بیشتر متوجه شدم باید به شکل زیر نصب بشه :
sudo apt-get install libsqlite3-0 libsqlite3-dev php5-sqlite sudo service apache2 restart
مشکل من بسته libsqlite3-dev بود که بعد از نصب و راه اندازی مجدد apache مشکل رفع شد.
این هم یک نمونه کد که کمی در مورد کلاس و روش استفاده آگاهی ابتدایی بده :
$db = new SQLite3('my_database') or die('Unable to open database'); $query = <<<EOD CREATE TABLE IF NOT EXISTS users ( username STRING PRIMARY KEY, password STRING) EOD; $db->exec($query) or die('Create db failed'); $user = sanitize($_POST['username']); $pass = sanitize($_POST['password']); $query = <<<EOD INSERT INTO users VALUES ( '$user', '$pass' ) EOD; $db->exec($query) or die("Unable to add user $user"); $result = $db->query('SELECT * FROM users') or die('Query failed'); while ($row = $result->fetchArray()) { echo "User: {$row['username']}\nPasswd: {$row['password']}\n"; }