如何在codeigniter中添加数据库中的数据

时间:2015-08-03 05:24:10

标签: php mysql codeigniter

有两张桌子。

  1. 类别(idcategory,姓名,URL)
  2. 子类别(ID,姓名,URL,idcategory)
  3. 在codeigniter中我有一个名为submenu的控制器,view是vwsubmenu。 在添加函数中,我必须将名称,URL和idcategory添加到子类别表中。但是在视图页面中有三个字段,例如一个是输入类型文本(名称),输入类型文本(URL),选择类型是名称类别表中的类别。

    现在我想从名称(这是select类型的输入)中获取类别表的id,并在idcategory字段中插入子类别表。 如何在codeigniter中做到这一点。

    请帮助

5 个答案:

答案 0 :(得分:0)

你可以尝试

$this->db->insert_id();

这将返回类别表中的最后一个id,然后您可以插入子类别表。

您可以从here

获取更多信息

答案 1 :(得分:0)

首先改进您的数据库结构。

CREATE TABLE IF NOT EXISTS `category` (
  `idcategory` int(11) NOT NULL AUTO_INCREMENT,
  `parent_id` int(11) NOT NULL,
  `name` varchar(255) NOT NULL,
  `url` varchar(255) NOT NULL,
  PRIMARY KEY (`idcategory`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

试试这个......

http://forum.codeigniter.com/archive/index.php?thread-493.html

答案 2 :(得分:0)

 public function add_submenu()
 {

        if(isset($_REQUEST['submit']))
        {

        $namesubcategory=$_POST['namesubcategory'];
        $urlsubcategory=$_POST['urlsubcategory'];
        $parent_menu=$_POST['parent_menu'];
        $a=$parent_menu;
        $query = $this->db->query('Select idcategory from category where namecategory="$a"');
        $row = $query->row();
        $b=$row->idcategory;


        $sql="insert into subcategory values('','$namesubcategory','$urlsubcategory','$b')";
        $val = $this->db->query($sql,array($namesubcategory ,$urlsubcategory,$b));
        redirect('admin/submenu/');
        }

        $arr['page'] = 'submenu';

        $this->load->view('admin/vwAddSubmenu',$arr);
    }

这是子菜单控制器中的添加功能

答案 3 :(得分:0)

首先,您必须将数据发送到模型表单控制器

$result= $this->model_name->model_function($data);

然后你可以在模型中指定它:

public function functionName( $data){
    $this->db->insert('table_name',$data);
}

答案 4 :(得分:0)

在子类别视图中加载3个输入字段

  1. 名称
  2. URL
  3. idcategory(这应该是类别表的下拉列表)
  4. 然后使用提供的设置将数据添加到数据库。

    <强>代码

    加载子类别视图之前

    获取控制器中的category数据

    $data['category'] = $this->Model_name->get_category();
    $this->load->view('sub_category_view',$data);
    

    在模型中

    public function get_category()
    {
        $query = $this->db->query->("SELECT * FROM category");
        $result = $query->result_array();
        return $result;
    }
    

    在子类别视图中

    <form method="post" action="<?php echo base_url() ?>index.php/controller/add_subcategory">
        <input type="text" name="name" value="Sub Category Name">
        <input type="url" name="url" value="Sub Category URL">
        <select name="category">
            <?php
                foreach ($category as $item)
                {
                    ?>
                    <option id="<?php echo $item['id'] ?>"><?php echo $item['name'] ?></option>
                <?php
                }
            ?>
    
        </select>
        <input type="submit" name="submit" value="Add Sub Category">
    
    </form>
    

    //将子类别添加到数据库

    在控制器

    public function add_subcategory()
    {
    
        if(isset($_POST['submit']))
        {
            $name = mysql_real_escape_string($_POST['name']);//if `mysqli` change this mysql_real_escape_string
            $url = $_POST['url'];
            $cat = $_POST['category'];
    
    
            $result = $this->Model_name->insert_subcategory($name,$url,$cat);
    
            if(isset($result))
            {
                echo 'insert successfully';
    
            }
            else
            {
                echo 'insert Failed';
            }
    
        }
    
    }
    

    在模型中

    function insert_subcategory($name,$url,$cat)
    {
        $data = array(
            'name' => $name,
            'url' => $url ,
            'idcategory' => $cat
        );
    
        $this->db->insert('subcategory', $data);
    }