Функция GFAPI submit_form () в цикле - PullRequest
0 голосов
/ 13 июня 2019

Я борюсь с функцией GFAPI submit_form(), когда она используется в циклах. По неизвестной причине он часто объединяет данные из других циклов в один, результатом этой ситуации является то, что только самая первая запись добавляется надлежащим образом, а остальные кажутся пустыми.

Я не могу использовать другие функции, хотя я пытался - и это сработало (add_entry(), например). Мне нужно использовать генерацию QR и прикрепить их к уведомлению, и эти коды генерируются при отправке формы.

CSV-файл содержит не менее 3 столбцов: email, full_name и phone_number. Вот мой код:

function generateData($filename, $date, $id){
  $rows   = array_map('str_getcsv', file($filename));
  $header = array_shift($rows);
  $csv    = array();

  foreach($rows as $row) {
      $csv[] = array_combine($header, $row);
  }

  $count_array = count($csv);
  for ($i=0; $i < $count_array; $i++) {

    foreach ($csv[$i] as $key => $value) {
      // delete rows that we don't need
      if ($key != 'email' && $key != 'full_name' && $key != 'phone_number') {
        unset($csv[$i][$key]);
      }

    }
  }

  insertGFAPI($csv);
}
function insertGFAPI($entries){
  $count_entries = count($entries);

  for ($i=0; $i < $count_entries; $i++) {

    $data[$i]['input_1'] = $entries[$i]['email'];
    $data[$i]['input_2'] = $entries[$i]['full_name'];
    $data[$i]['input_3'] = $entries[$i]['phone_number'];

    $result = GFAPI::submit_form( get_option('form-id'), $data[$i]);
  }

Результат, который я хотел бы получить, довольно прост - я хочу знать, почему и как возможно, что submit_form() объединяет данные из других циклов и как я могу предотвратить это. Вы знаете, что я могу с этим сделать?

1 Ответ

0 голосов
/ 01 июля 2019

решаемая. Необходимо было очистить массив $_POST.

...