регистрация без БД

Я хочу сделать регистрацию на сайте но у меня возникли проблемы с БД... обьяснять не буду в чем суть...ну так вот можно на php написать регистрацию без БД? Подскажите пж


Ответы (3 шт):

Автор решения: Andrew

Хранить все данные в файлах. Вместо записи в БД записываете в файл и все это проверяете. Но это не имеет смысла

→ Ссылка
Автор решения: revenger

Существуют текстовые БД, можно использовать одну из них.

→ Ссылка
Автор решения: ssv32

Да, нужно писать в файлы и считывать. (Но самый правильный вариант конечно разобраться с проблемой в СУБД)

Немного заморочился и сделал типа мини СУБД (очень мини) работающей на текстовых файлах https://github.com/ssv32/PhpFileSql (может пригодится кому то с похожей проблемой, всё ещё не идеально, ограничено и не до тестировано но вроде работает, + любой может взять код и доделать под себя нужное).

Пример использования:

  • Создаёте папку вне веб пространства, тут будут файлы БД (в файле зашифровано хранятся ваши таблицы).

  • Подключаете в своём проекте класс из репы, передав в конструктор путь к папке с файлами БД.

  • Далее как в примере из репы можно работать.

Пример:

// класс из репы
include_once('./classes/PhpFileSql.php');
// путь до папки в не веб пространства
$urlFileDb = '/var/www/dbPhpFileSql/';

$phpFileSql = new PhpFileSql($urlFileDb);

// подключиться к существующей БД (считается и расшифруется файл /var/www/dbPhpFileSql/phpFileDb_< $nameDataBase > )
$phpFileSql->connect($login, $pass, $nameDataBase);

// или создать и подключиться
//$phpFileSql->createDataBase($login, $pass, $nameDataBase);

// создать таблицу
$phpFileSql->createTable('table1', array('login', 'pass', 'flag'));

// добавить запись в таблицу
$phpFileSql->insertInto(
    'table1', 
    array(
        'login' => 'qwe12345',
        'pass' => 'zxc222qwe'
    )
);

// обновить запись
$phpFileSql->update(
    'asd3', 
    array(
        'login' => 'qwe321',
        'pass' => 'zxsdf'
    ),
    array(
        '=' => array(
            'login',
            'qwe321'
        )
    ) 
);

// выбрать записи
$res = $phpFileSql->select(
    'testTable', 
    '*', 
    array(
        '=' => array(
            'login',
            'asd'
        )
    ) 
);

// деструктор объекта класса сохранит все действия над БД в файл БД
→ Ссылка