Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP: базы данных

Войти
Регистрация
Восстановить пароль
 
sdrus31
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 30
#1

Неполадки в SQLite - PHP БД

06.08.2011, 21:48. Просмотров 805. Ответов 6
Метки нет (Все метки)

Недавно столкнулся с проблемой работы с SQLite. Раньше никогда не работал. Ну и приключилась проблема: у меня есть исходный код, но почему-то он не выдает результат. Уже много чего перепробывал - результата нет. Может быть я ошибся?
PHP
1
2
3
4
5
6
$sqli=sqlite_open("test.sqlite");
sqlite_query($sqli,"CREATE TABLE test (num INTEGER DEFAULT '0')");
$ress=sqlite_query($sqli,"SELECT * FROM test");
$res=sqlite_fetch_array($ress);
echo $res;
echo $res['num'];
Вот этот отрезок кода не работает. Он никаких результатов не выдает. Пытался делать num INTEGER DEFAULT 0 (т.е. без кавычек) - ноль эмоций. В чем может быть дело? База сама создается, и вроде как таблица тоже успешно создалась, а вот результата нет.

Всем заранее спасибо за ответы!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.08.2011, 21:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Неполадки в SQLite (PHP БД):

MySQL Неполадки с авторизацией - PHP БД
С подключением к БД нету проблем, в ней есть таблица users там столбцы user_login и user_password Что не так с кодом, все время пишет...

неполадки с авторизацией в игре - PHP БД
всем добрый вечер! Говорю сразу, код не мой. Возникла проблема с авторизацией в игре, а точнее я так думаю проблема с таймаутом сессии. То...

Неполадки с вызовом процедур sql - PHP БД
При попытке вызвать несуществующую процедуру не выводится сообщение об ошибке. Когда вызываю существующую процедуру ничего не происходит....

SQLite блокировка - PHP БД
Здравствуйте. Скажите, как узнать, заблокирована ли при выполнении скрипта БД на запись(правку) или нет. Вот код, который изменяем...

Кодировка БД в SQLite - PHP БД
Всех с праздниками! Возник вопрос, нигде не могу найти решение. Как установить кодировку для БД в SQLite и вообще возможно ли это...

SQLite SQLite sqlite3_threadsafe() - PHP БД
Доброе время суток! Впал в ступор! Помогите! Пожалуйста! Сайт на хостинге. В PHP7 хочу вызвать функцию sqlite3_threadsafe() ...

6
TBIKC
web dev
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
06.08.2011, 22:23 #2
Я делал это так
PHP
1
2
3
4
5
    public function getAll(){
        
            $sql = "SELECT * FROM msgs ORDER BY id DESC";
            $res = $this->_db->arrayQuery($sql, SQLITE_ASSOC);
       }
Выше код он в классе находиться, ниже непосредственно сам вывод
PHP
1
2
3
4
5
6
7
8
9
10
11
12
$result = $gbook->getAll();
if(!is_array($res)){
    $errMsg = "Произошла ошибка при выводе записей";
}else{
    echo "<p>Всего записей в Гостевой книге: ".count($res)."</p>";
    foreach($res as $item){
        $id = $item['id'];
        $name = $item['name'];
        $email = $item['email'];
        $msg = nl2br($item['msg']);
        }
}
Вообщем, выведи это в foreach, да и кстате а что он должен вывести если ты как бы ничего не вносил в таблицу ?
1
sdrus31
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 30
06.08.2011, 23:57  [ТС] #3
он должен выводить число, записанное в num.
0
TBIKC
web dev
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
07.08.2011, 00:02 #4
а зачем тебе это число?
повторяю, что он должен вывести если ты как бы ничего не вносил в таблицу ?
0
sdrus31
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 30
07.08.2011, 00:06  [ТС] #5
TBIKC, а как ты подключаешь базу? Ведь в твоем коде вроде как нет ссылки на переменную с подключением. Ну вообщем, можно поподробнее?


Добавлено через 1 минуту
TBIKC, посмотри внимательно. С самого начала он должен вывести 0, т.к. есть DEFAULT
0
TBIKC
web dev
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
07.08.2011, 00:18 #6
ООП подход, с помощью конструктора

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class GbookDB {
    const DB_NAME = "gbook.db";
    private $_db;
    
    public function __construct(){
        try{
            if (!file_exists(self::DB_NAME)) {
                $this->_db = new SQLiteDatabase(self::DB_NAME);
                $sql = "CREATE TABLE msgs(
                            id INTEGER PRIMARY KEY,
                            name TEXT,
                            email TEXT,
                            msg TEXT,
                            datetime INTEGER,
                            ip TEXT)";
                $result = $this->_db->query($sql);
        }catch(SQLiteException $e){
            exit("<h1>Всё плохо!</h1>");
        }
    }
}
а потом просто вызываю

PHP
1
2
include "GbookDB.php";
$gbook = new GbookDB();
1
sdrus31
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 30
07.08.2011, 00:22  [ТС] #7
спасибо. будем разбираться
0
07.08.2011, 00:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2011, 00:22
Привет! Вот еще темы с ответами:

SQLite vs PHP 5.3.11 - PHP БД
При запросе $db = sqlite_open (&quot;test.txt&quot;); выдает В php.ini: extension=php_pdo_mysql.dll extension=php_sqlite3.dll в...

Безопасность бд sqlite - PHP БД
Здравствуйте, подскажите пожалуйста: 1. можно ли использовать бд sqlite для маленького сайта-визитки, или лучше все таки что то другое?...

Ошибка SQLITE - PHP БД
Вот код. &lt;?php $db = new SQLite3('mysqlitedb.db'); $results = $db-&gt;query('SELECT bar FROM foo'); while ($row =...

не работает sqlite - PHP БД
Операцонка Ubuntu 12.04 Решил для своей простенькой задачки попробовать sqlite. Запись данных и создание таблиц работает только из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru