存储相同记录我的提交按钮

时间:2017-11-21 10:34:59

标签: php codeigniter codeigniter-3

您好我希望获取记录并将其保存到我的数据库中,但我一直在为所有选择选项获取相同的sql语句

Course ID INSERT INTO `tbl_assign_course` (`course_id_1`, course_id_2`, `course_id_3`) VALUES ('7', '7', '7') 

Here is the Options list to choose:

我如何解决这个逻辑错误我会感激任何帮助

<!DOCTYPE html>
<html>
<head>
    <title> The University</title>
    <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>css/style.css">
</head>
<body>
<div class="topnav">
    <?php $this->load->view('header'); ?>
</div>
<?php
print_r($result);
?>

<form method="post" action="<?php echo(base_url() . "University/std_course_assign/" . $result[0]['course_id'] . "/" . $result[0]['course_i'] . "/" . $result[0]['course_id']); ?>">
    <table>
        <tr>
            <td>
                <select name='course_id_1'>
                    <option value="">--- Select Course ---</option>
                    <?php
                    for ($i = 0; $i < count($result); $i++) { ?>
                        <?php echo "<option value=" . $result[$i]['course_id'] . ">" . $result[$i]['course_name'] . "</option>"; ?>
                        <?php
                    }
                    ?>
            </td>
            <td>
                <select name='course_id_2'>
                    <option value="">--- Select Course ---</option>
                    <?php
                    for ($i = 0; $i < count($result); $i++) { ?>
                        <?php echo "<option value=" . $result[$i]['course_id'] . ">" . $result[$i]['course_name'] . "</option>"; ?>
                        <?php
                    }
                    ?>
            </td>
            <td>
                <select name='course_id_3'>
                    <option value="">--- Select Course ---</option>
                    <?php
                    for ($i = 0; $i < count($result); $i++) { ?>
                        <?php echo "<option value=" . $result[$i]['course_id'] . ">" . $result[$i]['course_name'] . "</option>"; ?>
                        <?php
                    }
                    ?>
                    <input type="hidden" name="std_id" value="<?= $std_id ?>">
                    <input type="Submit">

            </td>
        </tr>
    </table>
</form>
</body>
</html>  

模型功能

public function std_course_assign($course_id) {
    $data = array('std_id' => $this->input->post('std_id'),
                  'course_id_1' => $this->input->post('course_id'),
                  'course_id_2' => $this->input->post('course_id'),
                  'course_id_3' => $this->input->post('course_id'),
        );
    $this->db->insert('tbl_assign_course', $data);
    $this->db->where('std_id', $this->input->post('std_id'));
    print_r($data);
}

2 个答案:

答案 0 :(得分:1)

您的插入查询错误,请将其更改为&#39; course_id&#39;到&#39; course_id_1&#39; &#39; course_id_2&#39;等等:

public function std_course_assign($course_id) { 
    $data= array( 
        'std_id'=>$this->input->post('std_id'), 
        'course_id_1'=>$this->input->post('course_id_1'), 
        'course_id_2'=>$this->input->post('course_id_2'), 
        'course_id_3'=>$this->input->post('course_id_3')
    ); 
    $this->db->insert('tbl_assign_course', $data); 
    $this->db->where('std_id',$this->input->post('std_id')); 
    print_r($data); 
}

答案 1 :(得分:0)

我认为您使用WHERE条件和INSERT查询,对所需结果使用正确的INSERT查询

并在插入查询中使用正确的attribute name