将值插入CodeIgniter中的数据库;我有数组< input>标记

lnlaulya  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(92)

我如何插入一个值到数据库中有一个数组值在我的<input>标签。我正在制作在线图书馆系统;这部分是我在数据库中添加一本书有时一本书有多个作者。
现在我使用内聚插入,但2个作者共享1列。当插入到tbl_authors时,我希望他们必须在不同的列中。我将图书详细信息插入到tbl_books,并将作者插入到tbl_authors。我尝试了每种插入,但我只能在插入时显示数据时执行此操作,我不知道

foreach($test as value)
   {
   'author_name' => $value[' no idea what i need to put here']
    }

public function insertbooks()
            {
              $data=array(
            'book_id'         =>        $this->db->insert_id(),
            'book_title'    =>      $this->input->post('booktitle',true),
            'section_id'      =>        $this->input->post('section',true),
            /*'book_author'   =>        $this->input->post('bookauthor',true),*/
            'book_serial'   =>    $this->input->post('serial',true),
            'book_qty'      =>      $this->input->post('bookqty',true),
            );
            $sql1  = $this->db->insert('tbl_books',$data);
            $author_name=implode(',', $this->input->post('bookauthor',true));
            $data2=array(
            'book_id'       =>    $this->db->insert_id(),
            'author_name'   =>    $author_name
            );
            $sql2  = $this->db->insert('tbl_authors',$data2);
            }
oo7oh9g9

oo7oh9g91#

您可能需要将每个作者作为不同的行而不是列插入。
要实现这一点,您应该迭代authors数组,并分别进行每次插入,如下所示:

public function insertbooks()
{
    $data = array(
        'book_id'       =>    $this->db->insert_id(),
        'book_title'    =>    $this->input->post('booktitle',true),
        'section_id'    =>    $this->input->post('section',true),
        'book_serial'   =>    $this->input->post('serial',true),
        'book_qty'      =>    $this->input->post('bookqty',true),
    );
    $sql1  = $this->db->insert('tbl_books',$data);

    $book_id = $this->db->insert_id();

    foreach ($this->input->post('bookauthor',true) as $author) {
        $data2=array(
          'book_id'       =>    $book_id,
          'author_name'   =>    $author
        );
        $sql2  = $this->db->insert('tbl_authors',$data2);
    }
}

这样,您将为每本图书/作者关系创建单独的记录。

相关问题