Перейти к содержимому


Выполнить доп. действие с помощью javascript


Сообщений в теме: 14

#1 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 09:19

есть такое доп. действия в таблице 1
$dou= intval($_REQUEST['dou']);
$vg_n= intval($_REQUEST['vg']);
$vg= intval($_REQUEST['vg']);
$reestr=intval($_REQUEST['reestr']);
$query_kol="select count(id) as kol from cb_data124 where f1716=".$dou." and f1718=".$vg_n." and f1717=".$reestr;
$res_kol=mysql_query($query_kol);
$kol=mysql_fetch_array($res_kol);
$upd_s['Укомплектовано']=$kol['kol']+1;
update_query($upd_s, "Свободные места", "f1690=".$vg." and f1689=".$dou);
exit;
как передать туда значения с помощью javascripta при добавлении/редактировании записи в другой таблице?
Купил лицензию КБ

#2 Гость_Roman_*

  • Гости

Отправлено 05 Июнь 2013 - 09:27

А каким способом Вы вызываете доп. действие из другой таблицы?

#3 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 09:38

c_autocomplete[1] = $('#edit_value_custom1').f_autocomplete('user_button.php?id=13&line={$line_id}&dou=' + document.getElementById('value1716').value + '&vg=' + document.getElementById('value1718').value + '&reestr=' + encodeURIComponent(document.getElementById('value1717').value)
width: 280,
scroll: true,
scrollHeight: 300,
minChars: 0,
max: 1000,
formatItem: formatItem,
formatResult: formatResult
}).result(fix_result);
Купил лицензию КБ

#4 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 09:53

или выполнить при нажатии кнопки "Сохранить"
Купил лицензию КБ

#5 Гость_Roman_*

  • Гости

Отправлено 05 Июнь 2013 - 10:12

Можно воспользоваться таким JS:
var checkAction = false;
function custom_save() {
  if (checkAction)
    return true;
  $.ajax({ // Формируем запрос
    type: "POST",
    url: "user_button.php",
    data: { sel: 'get', csrf: csrf },
    success: function(msg) { // Сообщение с сервера
	  checkAction = true;
	 }
   });
  checkAction = true;
  save_line();
  return false;
}
addHandler(document.getElementById("edit_form"), "onsubmit", custom_save);
Соответственно, в data можно указать все нужные параметры.

#6 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 10:20

спс. попробую
Купил лицензию КБ

#7 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 11:08

// Выключение отображения поля при загрузке страницы
// display_field({$one_field.id}, 0);
line_id = '{$line_id}';
if (line_id == 'new') line_id = 1;
  var checkAction = false;
function custom_save() {
  if (checkAction)
    return true;
  $.ajax({ // Формируем запрос
    type: "POST",
    url: "user_button.php?id=13&line={$line_id}",
    data: { vg: document.getElementById('value1718').value, dou: document.getElementById('value1716').value, reestr:document.getElementById('value1717').value},
    success: function(msg) { // Сообщение с сервера
		  checkAction = true;
		 }
   });
  checkAction = true;
  save_line();
  return false;
}
addHandler(document.getElementById("edit_form"), "onsubmit", custom_save);
чет не срабатывает. обращаться - обращается к вычислению, но не передает значения
Купил лицензию КБ

#8 Гость_Roman_*

  • Гости

Отправлено 05 Июнь 2013 - 11:16

Выведите в success alert(msg).

#9 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 11:16

Сорри, все работает....
Купил лицензию КБ

#10 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 05 Июнь 2013 - 12:22

еще вопрос, кнопки "Сохранить" и "Редактировать" имеют дескрипторы save_line и switch_mode('edit'). а как отследить что была нажата кнопка "Удалить", причем как из таблицы так и из режима редактирования.
Купил лицензию КБ

#11 Гость_Roman_*

  • Гости

Отправлено 05 Июнь 2013 - 13:02

В режиме редактирования $_REQUEST['op'] = "delete"
В табличном режиме $_REQUEST['op_sel'] = "delete"

#12 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 26 Май 2014 - 21:00

есть вопрос - как в кроне выполнить доп.действие в таблице?
Купил лицензию КБ

#13 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 27 Май 2014 - 09:03

Напрямую - никак. Копируете код и помещаете его в цикл по таблице (т.к. в кроне нет текущей записи).

#14 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 27 Май 2014 - 20:56

т.е. передать нельзя типа www.mysite.ru/user_button.php?id=31 ?
Купил лицензию КБ

#15 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Май 2014 - 12:25

Нет, нельзя. Теоретически можно добавить функцию вызова, типа "call_additional_action", только насколько это актуально? Скопировать код и добавить цикл тоже не долго.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных