Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

06.07.2008, 21:55
|
|
Постоянный
Регистрация: 29.09.2007
Сообщений: 617
Провел на форуме: 3250478
Репутация:
999
|
|
PHP и Txt Db Api
PHP и DB API. В этой статье я опишу работу аналога sql на файлах.
Краткое содержание:
- Что это?
- Установка
- Как работает?
- Примеры использования
- Авторы
- Заключение
Часть 1. Что это?
DB Api - Аналог Sql. Этот скрипт работает на текстовых файлах.
Офф сайт: http://www.c-worker.ch/txtdbapi/index.php
Часть 2. Установка
Для начала скачаем архив отсюда:
http://downloads.sourceforge.net/flatfiledb/php-txt-db-api-0.3.1-Beta-01.zip?modtime=1106682716&big_mirror=0 (Архив не распаковываем.)
Далее скачаем установщик:
http://downloads.sourceforge.net/fla...8&big_mirror=0
И скопируем всё в одну папку.
Я создал папку api у себя на localhost и скопировал туда эти два файла. Заходим туда куда копировали через браузер(У меня http://localhost/api/install.php). Выбираем язык(в нашем случаи это English т.к. Русского там нет). Появляется текст, жмём Next. Дальше указываем пути к папкам для установки(лучше не менять).
После этого жмём Next. Подтверждаем свой выбор и жмём Next.
Дальше выбираем что нужно установить. 1- это примеры. 2- это управление бд(Похоже на PhpMyAdmin).3- доки.
Я оставил всё. Жмём Next.
Вводим данные для доступа в панель управления(логин и пароль) и жмём next.
Теперь будет сама установка. Жмём Install и ждём пока распакуется архив.
Всё!
Установка законченна! На этой страницы указанны пути к папкам.
Часть 3. Как это работаеть?
После установки у нас появились 2 папки.
Это databases и txt-db-api.
В первой папке хранятся базы данных .
Структура папки:
-databases
|-somebase
|-table1
|-table2
|-table3
|-somebase2
|-table4
|-table5
|-table6
А сама таблица состоит так:
id#name#pass
inc#str#str
######
1#test#123
2#test#321
Строчка 1 - название колонок
Строчка 2 - типы колонок(inc,str)
Строчка 3 - разделение.
Строчка 4 и 5 - записи в бд.
Скажу честно, мне так легче редактировать таблици.
В txt-db-api хранятся очень важные классы, доки, примеры, webgui(аналог phpmyadmin).
Работает DB Api так же как Sql.
Например: SELECT * FROM table1 WHERE name=123 ORDER by id
Часть 4. Примеры.
Для подключения в php нам нужно 2 строчки:
PHP код:
<?
include "patch_to_class/txt-db-api.php";
$db = new Database("user");//База данных. до создания базы это не будет работать.
?>
Что бы выполнить запрос в бд:
PHP код:
<?
$db->executeQuery("...");
?>
Для создания базы можно использовать "CREATE DATABASE cms" а, можно создать папку с названием табдицы в databases.
Дальше сделаем таблицу USER содержащую id,user,pass.
PHP код:
<?
$db->executeQuery("CREATE TABLE user (id inc, user str, pass str)");
?>
После создания таблицы добавим в нёё пару записей:
PHP код:
<?
$db->executeQuery("INSERT INTO user(user,pass) VALUES ('test', '111222')");
$db->executeQuery("INSERT INTO user(user,pass) VALUES ('test2', 'pwd')");
?>
Теперь у нас есть таблица с двумя записями в ней.
У меня вышло так:
PHP код:
<?
include "txt-db-api.php";
$db = new Database("user");
$db->executeQuery("CREATE TABLE user (id inc, user str, pass str)");
$db->executeQuery("INSERT INTO user(user,pass) VALUES ('test', '111222')");
$db->executeQuery("INSERT INTO user(user,pass) VALUES ('test2', 'pwd')");
?>
Код можно удалить.
Что бы сделать запрос из базы нам нужен такой код:
PHP код:
<?
include "txt-db-api.php";
$db = new Database("user");
$d=$db->executeQuery("SELECT * FROM user");
for($i=0;$i<count($d);$i++){
$d->next();
$data = $d->getCurrentValuesAsHash();
print_r($data);
}
?>
Вот я и описал примеры работы в txt db api(кстати это полное название =)).
Так же там работает: "LIKE,WHERE,ORDER,UPDATE,DELETE" и т.п.
Часть 5 и 6. Авторы и Заключение.
Автор этого класса: http://c-worker.ch.
Хочу выразить ему благодарность за такую работу.
Я не хочу вам это навязывать, я просто хочу сообщить что есть удобный вариант БД.
Спасибо за внимание.
(C) Hormold.
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|