Цикл Foreach не дает ожидаемый результат - PullRequest
0 голосов
/ 16 октября 2018

у меня есть два массива $ getusersdetails

Array
(
    [0] => Array
        (
            [users_id] => 2
        )

    [1] => Array
        (
            [users_id] => 3
        )

    [2] => Array
        (
            [users_id] => 4
        )

)

и $ data ['checkbox']

Array
(
    [1] => 1
    [2] => 3
)

Я хочу вставить эти значения в базу данных mysql,итак

 $j=1;
        foreach ($getusersdetails as $userstatus):

            $val1['fk_c_id'] = $data['checkbox'][$j];
            $val1['fk_user_id'] = $userstatus['users_id'];
            $val1['status'] = 1;
            $result1 = $this->db->insert('admin_course_details', $val1);
              $j++;
        endforeach;

здесь я не получаю ожидаемый результат.Ожидаемый вывод

status | fk_c_id | fk_user_id
1             1     2
1             1     3
1             1     4
1             3      2
1             3      3
1             3      4

мой вывод

status | fk_c_id | fk_user_id
    1             1     2
    1             1     3
    1             1     4

Я хочу 1 и 3 (значения флажков) для каждого пользователя, поэтому здесь у меня есть 3 пользователя. Но здесь только 1 значение флажкавставка. Любая помощь приветствуется. Спасибо

1 Ответ

0 голосов
/ 16 октября 2018

Вам необходимо подать две foreach()

foreach ($data['checkbox'] as $data):
  foreach ($getusersdetails as $userstatus):
      $val1['fk_c_id'] = $data;
      $val1['fk_user_id'] = $userstatus['users_id'];
      $val1['status'] = 1;
      $result1 = $this->db->insert('admin_course_details', $val1);
  endforeach;
endforeach;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...