Support

Account

Home Forums Add-ons Repeater Field update field not working on repeater field

Solved

update field not working on repeater field

  • Hi here is my code

    
       if (!empty($_POST['checks'])) {
            $metaInput['field_625aae0d867c4'] = [];
            foreach ($_POST['checks'] as $check) {
                $data = json_decode($check);
                $the_values[] = array(
                    'field_625aae3e867c5'=>$data->firstName,
                    'field_625aaf65867c6'=>$data->lastName,
                    'field_625aaf6c867c7'=>$data->checkNumber,
                    'field_625aaf77867c8'=>$data->accountNumber,
                    'field_625aaf83867c9'=>$data->bank,
                    'field_625aaf8b867ca'=>$data->price,
                    'field_625aaf96867cb'=>$data->date,
                );
            }
            echo '<pre>';
            print_r($the_values);
            echo "<br>";
            echo "post_id is : $post_id";
            update_field('field_625aae0d867c4' ,$the_values,$post_id );
    

    but it isn’t working

  • This

    
    $the_values[] = array( ...
    

    should be

    
    $the_values = array( ...
    
  • thanks but its still not working
    by the way values I think values should be 2d array since it’s repeater field am I wrong?

  • I’ve also tested add_row like this but still not working

    
      foreach ($_POST['checks'] as $check) {
                $data = json_decode($check);
                $the_values = array(
                    'field_625aae3e867c5'=>$data->firstName,
                    'field_625aaf65867c6'=>$data->lastName,
                    'field_625aaf6c867c7'=>$data->checkNumber,
                    'field_625aaf77867c8'=>$data->accountNumber,
                    'field_625aaf83867c9'=>$data->bank,
                    'field_625aaf8b867ca'=>$data->price,
                    'field_625aaf96867cb'=>$data->date,
                );
                add_row('field_625aae0d867c4' ,$the_values,$post_id );
    
            }
            echo '<pre>';
            print_r($the_values);
            echo "<br>";
            echo "post_id is : $post_id";
    
  • by the way values I think values should be 2d array since it’s repeater field am I wrong?

    My bad, yes, you are right.

    Please use code tags

    If field_625aae0d867c4 is a repeater and is not some type of sub field I do not see anything. Are your sure that json_decode() is returning a result?

    If you are updating multiple rows then update_field() should happen after the loop is completed, not inside the loop for each row.

  • I don’t know what was the problem but I decided to call it with api (I was using it after post created) and it worked

Viewing 6 posts - 1 through 6 (of 6 total)

You must be logged in to reply to this topic.