update_by_id

Все вопросы/проблемы по установке и использовании.
imamverdiyeveldar
Сообщения: 388
Зарегистрирован: 01 мар 2019, 08:57
Имя: Эльдар Имамвердиев
Откуда: Россия, Санкт-Петербург

Re: update_by_id

Сообщение imamverdiyeveldar »

Fait писал(а): 02 ноя 2024, 22:39 Интересно, что у вас Уроки - это подсущность.
Так нормально всё функционирует?

Просто я делал пару подобных систем и не встречал такую структуру ещё.
Изначально я делал сами уроки главной сущностью, и только учеников подсущностью. Потом выяснилось что это не удобно. Когда уроков становится 300+ (хотя по мне так было классно, и видимостью записей по статусу решалось). Но заказчик зациклился в "группировке" групп. Пришлось сделать как он хочет.
imamverdiyeveldar
Сообщения: 388
Зарегистрирован: 01 мар 2019, 08:57
Имя: Эльдар Имамвердиев
Откуда: Россия, Санкт-Петербург

Re: update_by_id

Сообщение imamverdiyeveldar »

Fait писал(а): 02 ноя 2024, 22:36 Вот ваш код:

Код: Выделить всё

$item_id = [id];
$check_st = db_query('select * from app_entity_32 where parent_item_id='.$item_id);
foreach ($check_st as $key => $value) {
  items::update_by_id(32, $value['id'], [ 'field_537' => 38 ]);
}
Если вы всё написали здесь правильно, то сработает как надо.
А где этот код будет "лежать"?
$item_id = [id]; тут не должно быть [parent_item_id] вместо [id]
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 961
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: update_by_id

Сообщение Fait »

imamverdiyeveldar писал(а): 02 ноя 2024, 22:46
Fait писал(а): 02 ноя 2024, 22:39 Интересно, что у вас Уроки - это подсущность.
Так нормально всё функционирует?

Просто я делал пару подобных систем и не встречал такую структуру ещё.
Изначально я делал сами уроки главной сущностью, и только учеников подсущностью. Потом выяснилось что это не удобно. Когда уроков становится 300+ (хотя по мне так было классно, и видимостью записей по статусу решалось). Но заказчик зациклился в "группировке" групп. Пришлось сделать как он хочет.
Ааа, знакомое чувство, когда заказчик просит именно так, а не иначе :D
Правда спустя некоторое время всё-таки он вернулся к моему предложению по структуре, так как его способ спустя несколько месяцев дал сбой, и он его наконец-то увидел.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 961
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: update_by_id

Сообщение Fait »

imamverdiyeveldar писал(а): 02 ноя 2024, 22:50
Fait писал(а): 02 ноя 2024, 22:36 Вот ваш код:

Код: Выделить всё

$item_id = [id];
$check_st = db_query('select * from app_entity_32 where parent_item_id='.$item_id);
foreach ($check_st as $key => $value) {
  items::update_by_id(32, $value['id'], [ 'field_537' => 38 ]);
}
Если вы всё написали здесь правильно, то сработает как надо.
А где этот код будет "лежать"?
$item_id = [id]; тут не должно быть [parent_item_id] вместо [id]
Этот код должен выполняться, когда в родителе меняется какое-то поле или просто нажимается кнопка.

Я понял условие именно так.
Если нет, то откуда должна нажиматься кнопка?
imamverdiyeveldar
Сообщения: 388
Зарегистрирован: 01 мар 2019, 08:57
Имя: Эльдар Имамвердиев
Откуда: Россия, Санкт-Петербург

Re: update_by_id

Сообщение imamverdiyeveldar »

Fait писал(а): 02 ноя 2024, 22:54
imamverdiyeveldar писал(а): 02 ноя 2024, 22:50
Fait писал(а): 02 ноя 2024, 22:36 Вот ваш код:

Код: Выделить всё

$item_id = [id];
$check_st = db_query('select * from app_entity_32 where parent_item_id='.$item_id);
foreach ($check_st as $key => $value) {
  items::update_by_id(32, $value['id'], [ 'field_537' => 38 ]);
}
Если вы всё написали здесь правильно, то сработает как надо.
А где этот код будет "лежать"?
$item_id = [id]; тут не должно быть [parent_item_id] вместо [id]
Этот код должен выполняться, когда в родителе меняется какое-то поле или просто нажимается кнопка.

Я понял условие именно так.
Если нет, то откуда должна нажиматься кнопка?
Кнопка нажимается в уроках. Выставил дату и время урока - нажал подтвердить и пошла смс учителю назначенному (этот вопрос решен) и ученикам из соседней подсущности.
Мне кажется код сработает если парент выставлю. Сейчас ноута нет при себе. Утром попробую и отпишусь обязательно
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 961
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: update_by_id

Сообщение Fait »

Ааа, в уроке!
Тогда вот код для кнопки автоматизации в уроках:

Код: Выделить всё

$parent = [parent_item_id];
$check_st = db_query('select * from app_entity_32 where parent_item_id='.$parent);
foreach ($check_st as $key => $value) {
  items::update_by_id(32, $value['id'], [ 'field_537' => 38 ]);
}
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 961
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: update_by_id

Сообщение Fait »

А вообще, вот небольшой бонус:

Код: Выделить всё

// $id - instance_id
// $token - API ключ
// $message - сообщение
// $tel - номер телефона
function wapico_send_message($id, $token, $message, $tel) {
  global $alerts;
  $tel = str_replace('+','',$tel);
  $tel = str_replace('-','',$tel);
  $tel = str_replace('(','',$tel);
  $tel = str_replace(')','',$tel);
  $tel = str_replace(' ','',$tel);
  
  $params = [
    'number' => $tel,
    'type' => 'text',
    'message' => strip_tags($message,'<b><i><a><code><pre>'),
    'instance_id' => $id,
    'access_token' => $token,
  ];
                                    
  $ch = curl_init("https://biz.wapico.ru/api/send.php");
  curl_setopt($ch, CURLOPT_HEADER, false);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_POSTFIELDS, ($params));
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  curl_setopt($ch, CURLOPT_TIMEOUT, 10);
  $result = curl_exec($ch);
  curl_close($ch);
    
  $result = json_decode($result,true);
  if (isset($result['error_code']) && is_object($alerts)) {
    $alerts->add('Whatsapp Error: '.$result['error_code'].' '.$result['description'],'error');      
  }     
}
Это функция для прямой отправки сообщений через wapico.
Пригодится в случаях, когда стандартные правила отправки не удовлетворяют потребностям (например, когда надо учесть 3 условия или отправить сообщение по телефону из совершенно другой сущности).

Добавьте её целиком в пользовательский PHP и вызывайте её в автоматизациях простой командой:

Код: Выделить всё

wapico_send_message($id, $token, $message, $tel);
imamverdiyeveldar
Сообщения: 388
Зарегистрирован: 01 мар 2019, 08:57
Имя: Эльдар Имамвердиев
Откуда: Россия, Санкт-Петербург

Re: update_by_id

Сообщение imamverdiyeveldar »

Fait писал(а): 02 ноя 2024, 22:57 Ааа, в уроке!
Тогда вот код для кнопки автоматизации в уроках:

Код: Выделить всё

$parent = [parent_item_id];
$check_st = db_query('select * from app_entity_32 where parent_item_id='.$parent);
foreach ($check_st as $key => $value) {
  items::update_by_id(32, $value['id'], [ 'field_537' => 38 ]);
}
БОЛЬШОЕ ВАМ СПАСИБО. работает.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 961
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: update_by_id

Сообщение Fait »

Рад помочь)
Ответить