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

180
29 марта 2022, 08:20

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

Answer 1

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

Answer 2

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

Answer 3

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

Немного заморочился и сделал типа мини СУБД (очень мини) работающей на текстовых файлах 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'
        )
    ) 
);
// деструктор объекта класса сохранит все действия над БД в файл БД
READ ALSO
Обрезать часть URL в начале

Обрезать часть URL в начале

Есть ссылка https://sitecom/ru/moskov/baby/andyushak-evgeniya-petrovna

147
Как быстро сделать портфолио

Как быстро сделать портфолио

Как в кратчайшие сроки сделать портфолио? Имеется опыт в разработке под PHP 3 года, laravel - 05 года

110
Laravel + VueJS .slice is not a function

Laravel + VueJS .slice is not a function

Вообщем есть приложение Laravel + VueJS на одной странице, точнее на нескольких страницах есть пагинация сделанная таким образом:

89
Отследить перезагрузку страницы

Отследить перезагрузку страницы

Как можно отследить перезагрузку страницы? Просто нажатие f5 - это отловить событием keyupА как, к примеру, если нажмут на перезагрузку страницы...

92