2016-09-16 4 views
2

Я делаю проект с кодом воспламенитель, в котором у меня есть форма, содержащая список students.My форме выглядит следующим образом:как получить скрытый идентификатор поля ввода в PHP CodeIgniter

<form action = 'my_controller/my_method' method = "post"> 
<table> 
    <thead> 
    <tr> 
     <th>Roll</th> 
     <th>Name</th> 
     <th></th> 
    </tr> 
    </thead> 
    <tbody> 
     <?php foreach ($students as $row) { ?> 
     <tr> 
      <td><?php echo $row->roll; ?></td> 
      <td><?php echo $row->name; ?></td> 
      <input type = "hidden" name = "class_id" value = "<?php echo $row->class_id; ?>" /> 
      <input type = "hidden" name = "student_id" value = "<?php echo $row->student_id; ?>" /> 
      <td><input type="submit" value="some value" class= "btn btn-info"></td> 
     </tr> 
     </tbody> 
    </table> 
</form> 

В моему контроллеру я должен получить скрытые входы. то есть; class_id и student_id. class_id одинаково для всех в таблице. Но student_id меняется. Как я могу получить student_ids в каждой форме submit. Я получаю этот класс_id в своем контроллере с помощью $ class_id = $ this-> input-> post ('class_id'); Заранее спасибо. Мой метод контроллер

function my_method(){ 
    $class_id = $this->input->post('class_id'); 
    $student_id = $this->input->post('student_id'); 
    echo $student_id; 
} 
+0

хотят все student_ids сразу? –

+0

да. но он не должен быть массивом. я имею в виду для каждого представления формы, я хочу получить соответствующий student_id – Ajzz

+0

, можете ли вы отправить пример? –

ответ

2

Вы можете использовать кнопку или якорный тег вместо представить, и может передать student_id и class_id в качестве параметров метода и их можно использовать в дальнейшем в вашей функции или метода. Например, я использую якорный тег, как отправить:

вид:

<table> 
     <thead> 
     <tr> 
      <th>Roll</th> 
      <th>Name</th> 
      <th></th> 
     </tr> 
    </thead> 
    <tbody> 
     <?php foreach ($students as $row) { ?> 
     <tr> 
      <td><?php echo $row->roll; ?></td> 
      <td><?php echo $row->name; ?></td> 
      <input type = "hidden" name = "class_id" value = "<?php echo $row->class_id; ?>" /> 
      <input type = "hidden" name = "student_id" value = "<?php echo $row->student_id; ?>" /> 
      <td> 
      <a href="<?php echo base_url(); . 'conroller/method/' . $row->class_id . '/' . $row->student_id ?>" class="btn btn-info" > submit</a> 
      </td> 
     </tr> 
    </tbody> 

controlller ::

class conroller extends CI_controllers{ 
    function method($classId, $studentId){ 
      // use classId and studentId here 
      echo 'class id = ' . $classId; 
      echo 'student id = ' . $studentId; 
    } 
} 
1
Here is the example javascript function 

    function setValues(class_id,student_id){ 
     document.getElementById("class_id").value = class_id; 
     document.getElementById("student_id").value = student_id; 
     return true; 
    } 

    HTML changes 

    <form action = 'my_controller/my_method' method = "post"> 
    <table> 
     <thead> 
     <tr> 
      <th>Roll</th> 
      <th>Name</th> 
      <th></th> 
     </tr> 
     </thead> 
     <tbody> 
      <?php foreach ($students as $row) { ?> 
      <tr> 
       <td><?php echo $row->roll; ?></td> 
       <td><?php echo $row->name; ?></td> 
       <td><input type="submit" value="some value" onclick="javascript:return setValues(<?php echo $row->class_id; ?>,<?php echo $row->student_id; ?>);" class= "btn btn-info"></td> 
      </tr> 
<?php } ?> 
      </tbody> 
     </table> 
     <input type = "hidden" name = "class_id" id="class_id" value = "" /> 
       <input type = "hidden" name = "student_id" id="student_id" value = "" /> 
    </form> 
Смежные вопросы