Для подключения к базе данных требуются следующие данные:
1. адрес сервера
2. база данных
3. порт подключения (по умолчанию использовать 3306)
4. логин и пароль
При разработке интернет-магазина на PHP требуется использовать:
1. Версию PHP не ниже 7.4
2. Класс mysqli
Если, при выполнении sql-запроса есть внутренние ошибки (например ошибка доступа), то результат запроса вернет 2 поля: isError и mess, где isError будет равно 1, а в поле mess будет указано описание ошибки.
Рассмотрим пример (на php) подключения к базе данных и запрос списка ваших магазинов/офисов
################################
# $db_host - адрес сервера
# $db - база данных
# $db_user - логин
# $db_pass- пароль
# $db_port - 3306
################################
#Попытка подключения, в случае ошибки, скрипт завершает работу
if (!$L = mysqli_connect($db_host, $db_user, $db_pass, $db, $db_port))
{
die("Error connecting to DB");
}
#Запрос для получения списка офисов/складов доступных для входа под пользователем с логином $db_user
$sql = "call `pRB_get`('rbStock',JSON_OBJECT('filter','login'),'ru',1,0,1,'')";
$res = mysqli_query($L,$sql);
/*******************
ВНИМАНИЕ! Если в запросе нужно передать текстовый параметр,
тогда предварительно выполните экранизацию символов,
выполнив команду mysqli_real_escape_string($L, $строковое_значение);
********************/
#Общая проверка ошибки синтаксиса запроса
if ($err = $L->error)
{
die("Ошибка синтаксиса: {$err}");
}
#Перебираем результат и выводим на экран ID и название офисов/магазинов
while($row = mysqli_fetch_assoc($res))
{
#Проверяем не вернулась ли ошибка, при выполнении запроса
if (@$row['isError'] && @$row['mess'])
{
die("Внутренняя ошибка: {$row['mess']}");
}
#Выводим на экран id и название склада
print_r(" ID = ".$row['id']);
print_r(" Склад =".$row['name']);
print_r("<br>");
}
/***********
ВНИМАНИЕ!!! Если необходимо выполнить следущий запрос, необходимо выполнить команду:
while( $L->more_results() && $L->next_result());
***********/