newusr wrote:Добрый день.
А можно по подробней описать алгоритм взаимодействия в данной схеме?
клиент MVDB на локальном АРМ --- удалённая MySQL БД --- форма на сайте (на одном хостинге с MySQL или не принципиально?)
набор файлов из папки (ккроме папки programm) размещете на любам хостинге (естественно с поддержкой php)
обращаетесь к php как есть по их адресу
если Вы решили полностью изменить положение папок или файлов по отношению к друг другу то нужно внести изминения
require '../rb/rb-mysql.php'; // загрузка redbeanphp
require 'db_connect.php';// загрузка параметров подключения
require 'passwor_autorisation.php';//загрузка паролей авторизации
где ../ означает - на одну папку вверх(назад)
в файле
db_connect.php меняете настройки подключения к БД где
R::setup( 'mysql:host=адрес БД (если на одном хостинге с БД то не менять);dbname= имя БД;charset=utf8',
'пользователь БД', 'парольБД' );
если БД и файлы расположенны на разных хостингах, то может понадобиться разрешение для внешнего соединения (настройки самого хостинга)
далее все по вашему желанию - можете сами выбрать как у Вас будет происходить обмен данными...
лично в маем случае настроенно так:
tablea tamleb
q q
w w
1 0
где 1 - говорит что данные нужно либо записать в удаленную БД либо обновить данные в самой программе..
соединие (получение сессии)- проверка на 1 в программе - если есть передать в БД -получить от БД(записано - изменить 1 на 0)
если нет( попытаться получить данные от БД) - если данные получены сверить и записать (если записанно - передать БД ок - в БД 1 меняется на 0)..
файл рандомного набора символов можете не использовать - это не обязательно (я просто показал пример)..
$data = $_POST; - вс полученные от программы данне POST помещаем в масив data
далее обращаемся так $data['login']
$iduser = R::findOne('user', 'login= ? AND idservice = ? ' , array($data['login'],$data['sservice'])); - поиск одной записи где
$переменная = R::findOne('таблица', 'строка= ? AND строка = ? ' , array(с чем сравниваем]))
if ( $iduser ) - если да// if ( ! $iduser ) -если нет
if (password_verify($data['pass'], $iduser->password)) - если сравнивается зашиврованные пароль
if ($data['pass'], $iduser->password) - если сравнивается не зашиврованные пароль
где $iduser - это
$iduser = R::findOne('user', 'login= ? AND idservice = ? ' , array($data['login'],$data['sservice']));
далее в файлах есть описание в моем же случае я всегда использую сессию соединения и данными манипулирую применяя эту сессию
как я уже писал в скрипте , если у вас будет очередность передачи данных то нельзя для каждого обращения делать свой объект (сессия будет потеряна)..