Изменить имена переменных POST в функции

0

У меня есть функция, которая отправляет данные в скрипт и обновляет базу данных, но сценарий использует цикл for для увеличения числа и этот номер вставляется в имя переменной в скрипте. Причина этого в том, что я вытаскиваю неизвестное количество данных, и мне нужно однозначно идентифицировать ячейки.

Таким образом, проблема, с которой я сталкиваюсь, связана с функцией и хочет изменить переменные post, чтобы скрипт мог проверить их в цикле.

Ex.

function test(test_name, test_id, cell_num, type)
  {
     if (type == "Test") {
         var test_name = $("#test_"+cell_num+"_name").val();
         $.post('test.php', { cell_num: cell_num, 'test_'+cell_num+'_name': test_name });
     }
  }

Вы заметите 'test' + cell_num + '_ name': имя_файла отформатировано неправильно. То, что я пытаюсь сделать, это ввести переменную имя переменной, так как мой скрипт проходит через эти имена постепенно.

ОБНОВИТЬ:

     var test_name = $("#test_"+cell_num+"_name").val();
     var params = {};
     params['cell_'+cell_num] = cell_num;
     params['test_'+cell_num+'_name'] = test_name;
     $.post('test.php', params);

Я не могу получить доступ к данным в параметрах test.php, используя

test_name = $_POST['test_1_name'];
cell = $_POST['cell_1'];

Кажется, что параметры передают значения, а не переменные.

Теги:
function

2 ответа

0
Лучший ответ

Я решил пойти со стандартной почтой и отказался от использования динамических переменных, поскольку это вызывало много ненужного стресса. Он использовался для системы инвентаризации, поэтому вы можете изменить одно поле, и как только вы нажмете кнопку мыши, одна ячейка обновит базу данных.

Я пытался уменьшить объем трафика в базу данных, но это было слишком много хлопот.

1

Вы можете сделать это так

function test(test_name, test_id, cell_num, type)
  {
     if (type == "Test") {
         var test_name = $("#test_"+cell_num+"_name").val();
         var params = {cell_num: cell_num};
         params['test_'+cell_num+'_name'] = test_name;
         $.post('test.php', params);
     }
  }

Определяя объект json, вы не можете определить имя ключа динамически. Поэтому, когда вам нужны динамические клавиши, относитесь к нему как к массиву, и он исправит вашу проблему.

  • 0
    При определении объекта json вы не можете определить имя ключа динамически. Поэтому, когда вам нужны динамические ключи, делайте это как ключ массива.
  • 0
    Ты должно быть шутишь с отрицательным голосом!
Показать ещё 10 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню