Я использую framework Codeigniter, и у меня есть форма с полями ввода. Когда я хочу, чтобы вставить значение входов полеев в базу данных я использую этот кодВставить данные из foreach в базу данных в PHP
function add($tableName)
{
$fieldsData = $this->db->field_data($tableName); // to get all fields name of the table like (id,title,post ..)
foreach ($fieldsData as $key => $field)
{
$datacc = array( $field->name => $this->input->post($field->name));
echo $this->input->post($field->name) ; // when I submit the form I get all that data I need like (mySubjet, MyPost...)
} // but when I insert the data it insert just the last filed like (cat_id = 3) only !// and the other fields are empty ..
$this->db->insert($tableName, $datacc);
}
так что я получаю только последнее значение, вставленное в базе данных, но когда я ставлю строку запроса внутри foreach
цикла как:
function add($tableName)
{
$fieldsData = $this->db->field_data($tableName);
$datacc = "";
foreach ($fieldsData as $key => $field)
{
$datacc = array( $field->name => $this->input->post($field->name));
$this->db->insert($tableName, $datacc); // inside the loop !
}
}
вставить 15 записей/строк (количество полей в таблице) и вставить уникальное значение для каждой строки. Вставляет поле TITLE
в первую строку, поле POST
в следующей строке и поле dateOfpost
в третьем и так далее.
WaW! .. Я не могу поверить своим глазам. Наконец-то это работает! Gregmac Спасибо, ТАК ТАК ТАК. Я устал от этого кода, который я пробовал сотни раз в течение 3 дней 12 часов в день! Я очень ценю вашу помощь .. и я не забуду! :) – 2009-08-29 08:38:06