Var dump показывает результат, но данные не вставляются в DB

Я пытаюсь опубликовать некоторое значение в БД, но по какой-то причине данные не вставлены. Массив, возвращаемый из представления, не пуст. Но запрос не выполняется.

Часть моего вида:

<!--?echo form_open_multipart('eva/evluation_questions_value_entry'); ?-->


<!--?php foreach ($info as $row){ 
 echo "<div class='row'-->";
 $i=$row->id;
 echo "<div>".$row->id ."</div>";

 echo "<div>".$row->name ."</div>";

 echo '';
 //some codes

Контроллер:

public function evluation_questions_value_entry() {
 $this->load->helper('url');
 $this->load->helper(array('form', 'url'));
 $this->load->model('TrainingEvaluationModel');
 $trainingEvaluation = $this->TrainingEvaluationModel->evluation_questions_value_entry();
}

Модель:

$this->ip_address = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] . '||' . $_SERVER['REMOTE_ADDR'] : $_SERVER['REMOTE_ADDR']; 
$this->created_on = date('Y-m-d H:i:s');
$this->created_by = 101;
$this->updated_on = null;
$this->updated_by = 0;


for ($i = 1; $i <= 13; $i++) {

 $this->training_evaluation_entry_id = $_POST['training_evaluation_entry_id'.$i];
 $this->value = $this->db->escape($_POST['group'.$i]);


 $query = "INSERT INTO training_evaluation_info(training_evaluation_entry_id,value,ip_address,created_by) 
 VALUES($this->training_evaluation_entry_id,$this->value,'$this->ip_address',$this->created_by)";
 if ($this->db->affected_rows()>0)
{
 return TRUE;
}
return FALSE;

}

Он не дает никаких ошибок, и массив данных передается модели правильно, но почему он не вставлен в БД??

1 ответ

Ваш комментарий в сторону, который выглядит опасным, не избегая всех полей (я рекомендую вам узнать о параметризованных запросах), в этом случае вы просто устанавливаете $query;

$query = "INSERT INTO training_evaluation_info(training_evaluation_entry_id,value,ip_address,created_by) 
VALUES($this->training_evaluation_entry_id,$this->value,'$this->ip_address',$this->created_by)";

... но никогда не выполнял его.

Вы хотите добавить a;

$this->db->query($query);

licensed under cc by-sa 3.0 with attribution.