им нуб с использованием CodeIgniter и кодированием PHP, мой вопрос заключается в том, что у меня есть ошибка .. им пытается хранить данные из моей формы, но ошибка не мешает мне ..преобразование массива в строку ошибку
A PHP Error was encountered
Severity: Notice
Message: Array to string conversion
Filename: mysql/mysql_driver.php
Line Number: 589
и база данных об ошибке:
Error Number: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Array' at line 1
INSERT INTO `grade1`() VALUES ('7'), Array
Filename: C:\wamp\www\thisisit\system\database\DB_driver.php
Line Number: 330
вот мое мнение:
<form action="<?php echo site_url('contrl/firstgrading') ?>" method="post">
<strong><input type="hidden" id="sid[]" name="sid[]" value="<?php echo $sid ?>"><?php echo $fname." ".$mname." ".$lname ?></strong><br>
<?php
$this->load->database();
$query = $this->db->query("SELECT subid,subjectname FROM subjects ");
foreach ($query->result_array() as $row)
{
?>
<tr>
<td><input type="hidden" id="subid[]" name="subid[]" value="<?php echo $row['subid'] ?>"><?php echo $row['subjectname']?></td>
<td align="center"> <input class="form-control" id="GFirst[]" name="GFirst[]" type="text"></td>
<td align="center"> <input class="form-control" id="GSecond[]" name="GSecond[]" type="text"></td>
<td align="center"> <input class="form-control" id="GThird[]" name="GThird[]" type="text"></td>
<td align="center"> <input class="form-control" id="GFourth[]" name="GFourth[]" type="text"></td>
<td align="center"> <input class="form-control" id="GFinal[]" name="GFinal[]" type="text"></td>
</tr>
<?php
}
?>
</form>
это мой Controlle г:
$temp = array();
$temp = $this->input->post(NULL, TRUE);
for($i = 0 ; $i < count($this->input->post('subid')); $i++){
$temp[] = array(
'gradeid' => '0',
'firstgrading' => $temp['GFirst'][$i],
'secondgrading' => $temp['GSecond'][$i],
'thirdgrading' => $temp['GThird'][$i],
'fourthgrading' => $temp['GFourth'][$i],
'finalgrading' => $temp['GFinal'][$i],
'subidLink' => $temp['subid'][$i],
'studidLink' => $temp['sid']
);
};
$this->load->model('model');
$this->model->grade($temp);
это моя модель:
function grade($array = NULL)
{
if(!isset($array) || !is_array($array)) return FALSE;
$confirm = $this->db->insert_batch('grade1',$array);
if($confirm)
{
echo "Success";
}
else
{
echo "Fail";
}
}
пост метод класса из модели ..... – Rooster
Вы не можете передать многомерный массив, если, если вы этого не сделаете insert_batch –
Вы делаете insert_batch? –