Codeigniter вставка значения в массив - PullRequest
0 голосов
/ 04 октября 2010

Я задал вопрос о SO несколько часов назад.

Как вставить массив имен полей из формы в базу данных SQL в Codeigniter.

<tr>
<td><input type="text" name="user[0][name]" value=""></td>
<td><input type="text" name="user[0][address]" value=""><br></td>
<td><input type="text" name="user[0][age]" value=""></td>
<td><input type="text" name="user[0][email]" value=""></td>

<tr>
<td><input type="text" name="user[1][name]" value=""></td>
<td><input type="text" name="user[1][address]" value=""><br></td>
<td><input type="text" name="user[1][age]" value=""></td>
<td><input type="text" name="user[1][email]" value=""></td>
</tr>
..........//so on

Это лучший ответ, который я получил

foreach($_POST['user'] as $user)
 {
    $this->db->insert('mytable', $user);
 }

Теперь я хочу передать идентификатор, сгенерированный из данных сеанса пользователя, в этот массив + несколько других значений, например текущее время

Можно ли настроить вышеуказанное решение?

Предыдущее обсуждение здесь

Ответы [ 2 ]

0 голосов
/ 04 октября 2010
foreach($_POST['user'] as &$user)
 {
    $user['additional_data'] = $_SESSION['additional_data'];
    $user['current_time'] = time();
    $this->db->insert('mytable', $user);
 }

Обратите внимание на пользователя & in & $, который является передачей по ссылке, которая позволяет манипулировать массивом внутри цикла foreach.Если вы ссылаетесь на пользователя позже, не забудьте удалить ($ user), чтобы удалить ссылку на последний элемент массива $ _POST ['user'].

0 голосов
/ 04 октября 2010

Я не знаю, пропустил ли я что-то здесь, но разве вы не можете просто удалить foreach и построить свой код следующим образом:

$var1 = $_POST['user_var1'] * 3 + 1 / 5;
$this->db->insert('mytable', $var1);
$var2 = gettime();
$this->db->insert('mytable', $var2);
....

(где gettime () должно быть заменено любой командой PHP для получения времени плюс функция форматирования)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...