循环中的 GFAPI submit_form() 函数
GFAPI submit_form() function in loop
当我在循环中使用 GFAPI 的函数 submit_form()
时,我遇到了麻烦。不知道什么原因,它经常将其他循环的数据合并到一个循环中,这种情况的结果是只有第一个条目以正确的方式添加,其余的似乎是空的。
我不能使用其他功能,尽管我已经尝试过 - 而且它有效(例如 add_entry()
)。我需要使用二维码生成并将它们附加到通知中,这些代码是在提交表单时生成的。
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()
为什么以及如何合并来自其他循环的数据以及我如何防止它。
你知道我能用它做什么吗?
已解决。必须清空 $_POST
数组。
当我在循环中使用 GFAPI 的函数 submit_form()
时,我遇到了麻烦。不知道什么原因,它经常将其他循环的数据合并到一个循环中,这种情况的结果是只有第一个条目以正确的方式添加,其余的似乎是空的。
我不能使用其他功能,尽管我已经尝试过 - 而且它有效(例如 add_entry()
)。我需要使用二维码生成并将它们附加到通知中,这些代码是在提交表单时生成的。
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()
为什么以及如何合并来自其他循环的数据以及我如何防止它。
你知道我能用它做什么吗?
已解决。必须清空 $_POST
数组。