Есть записи в сущности, в каждой записи есть назначенные пользователи. Какой тип поля создать и каким запросом или кодом подтянуть в одно поле номера телефонов всех назначенных пользователей?
Поле Контакты: 89999…,8999…, и т.д.
Как получить телефоны назначенных пользователей, если их несколько?
- SalahievFR
- Сообщения: 280
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как получить телефоны назначенных пользователей, если их несколько?
Родил вот такую конструкцию. Написано в блокноте, работоспособность надо проверять
// field_819 - поле с назначенными пользователями
// field_820 - целевое поле с номерами телефонов
// app_entity_69 - сущность с целевыми записями
// field_1087 - поле с номером телефона пользователя
// app_entity_1 - сущность "Пользователи"
Поле "PHP код":
// field_819 - поле с назначенными пользователями
// field_820 - целевое поле с номерами телефонов
// app_entity_69 - сущность с целевыми записями
// field_1087 - поле с номером телефона пользователя
// app_entity_1 - сущность "Пользователи"
Поле "PHP код":
Код: Выделить всё
$users_query = db_query("SELECT `field_819` FROM `app_entity_69` WHERE `id` = [id]"); // запрос списка назначенных пользователей из текущей записи
$users_row = mysqli_fetch_assoc($users_query);
$users_arr = explode(',', $users_row['field_819']); // разбор строки и упаковка в массив
$tel_arr = array();
foreach($users_arr as $user_id) { // перебор массива с пользователями и упаковка в массив номеров телефонов
$tel_query = db_query("SELECT `field_1087` FROM `app_entity_1` WHERE `id` = {$user_id}");
$tel_row = mysqli_fetch_assoc($tel_query);
$tel_arr[] = $tel_row['field_1087'];
}
$tel_numbers = implode(',', $tel_arr); // сборка строки с номерами телефонов из массива
db_query("UPDATE `app_entity_69` SET `field_820` = {$tel_numbers} WHERE `id` = [id]"); // запись строки с номерами в поле текущей записи
- SalahievFR
- Сообщения: 280
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как получить телефоны назначенных пользователей, если их несколько?
Спасибо, буду проверять. По результату отпишусь)tehnos писал(а): ↑25 май 2023, 21:24 Родил вот такую конструкцию. Написано в блокноте, работоспособность надо проверять
// field_819 - поле с назначенными пользователями
// field_820 - целевое поле с номерами телефонов
// app_entity_69 - сущность с целевыми записями
// field_1087 - поле с номером телефона пользователя
// app_entity_1 - сущность "Пользователи"
Поле "PHP код":
Код: Выделить всё
$users_query = db_query("SELECT `field_819` FROM `app_entity_69` WHERE `id` = [id]"); // запрос списка назначенных пользователей из текущей записи $users_row = mysqli_fetch_assoc($users_query); $users_arr = explode(',', $users_row['field_819']); // разбор строки и упаковка в массив $tel_arr = array(); foreach($users_arr as $user_id) { // перебор массива с пользователями и упаковка в массив номеров телефонов $tel_query = db_query("SELECT `field_1087` FROM `app_entity_1` WHERE `id` = {$user_id}"); $tel_row = mysqli_fetch_assoc($tel_query); $tel_arr[] = $tel_row['field_1087']; } $tel_numbers = implode(',', $tel_arr); // сборка строки с номерами телефонов из массива db_query("UPDATE `app_entity_69` SET `field_820` = {$tel_numbers} WHERE `id` = [id]"); // запись строки с номерами в поле текущей записи
- Oleg
- Сообщения: 468
- Зарегистрирован: 26 окт 2018, 08:23
- Имя: Олег Родионов
- Откуда: Россия,Санкт-Петербург
Re: Как получить телефоны назначенных пользователей, если их несколько?
А для чего? Какой бизнес процесс?
Установка и настройка IP ATC Asterisk
- SalahievFR
- Сообщения: 280
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как получить телефоны назначенных пользователей, если их несколько?
Вроде все сделал правильно по вашей инструкции пустое поле выходит.tehnos писал(а): ↑25 май 2023, 21:24 Родил вот такую конструкцию. Написано в блокноте, работоспособность надо проверять
// field_819 - поле с назначенными пользователями
// field_820 - целевое поле с номерами телефонов
// app_entity_69 - сущность с целевыми записями
// field_1087 - поле с номером телефона пользователя
// app_entity_1 - сущность "Пользователи"
Поле "PHP код":
Код: Выделить всё
$users_query = db_query("SELECT `field_819` FROM `app_entity_69` WHERE `id` = [id]"); // запрос списка назначенных пользователей из текущей записи $users_row = mysqli_fetch_assoc($users_query); $users_arr = explode(',', $users_row['field_819']); // разбор строки и упаковка в массив $tel_arr = array(); foreach($users_arr as $user_id) { // перебор массива с пользователями и упаковка в массив номеров телефонов $tel_query = db_query("SELECT `field_1087` FROM `app_entity_1` WHERE `id` = {$user_id}"); $tel_row = mysqli_fetch_assoc($tel_query); $tel_arr[] = $tel_row['field_1087']; } $tel_numbers = implode(',', $tel_arr); // сборка строки с номерами телефонов из массива db_query("UPDATE `app_entity_69` SET `field_820` = {$tel_numbers} WHERE `id` = [id]"); // запись строки с номерами в поле текущей записи
- SalahievFR
- Сообщения: 280
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как получить телефоны назначенных пользователей, если их несколько?
На самом деле телефон мне не нужен. Я создам поле ЧАТ ИД в сущности пользователи. А потом в другой сущности хочу собрать эти чат ид пользователей, которые назначены в данной записи. Дальше через php отправлю уведомление пользователям в телеграм(готовый код уже есть).
Re: Как получить телефоны назначенных пользователей, если их несколько?
Где-то косяк. Надо дебажить.
- SalahievFR
- Сообщения: 280
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация: