2013-11-03 2 views
-1

Я разрабатываю систему посещаемости в кодеигниторе. Существует список флажков. мне удастся вставить проверенные данные в базу данных, но я хочу знать, как я буду вставлять непроверенные данные в базу данных, и как я обнаруживаю, что увядает флажок, или не нравится java.Как получить непроверенное значение флажка в codeigniter

вот мой взгляд

<table align="center"> 
<tr> 
    <th><input type="checkbox" title="Select all" onclick="changeAll(this.checked);"/></th> 
    <th>student id</th> 
    <th>student name</th> 
    <th>class</th> 
    <th>section</th> 
</tr> 
<form action="<?php echo base_url();?>index.php/student/attendance/submit" onsubmit="return checkForm();" method="post"> 
<?php foreach($result as $r):?> 
<tr> 
    <td><input type="checkbox" name="id[]" id="id[]" value="<?php echo $r->sid ?>"/></td> 
    <td><?php echo $id=$r->sid ?></td> 
    <td> 
     <?php 
      $this->db->where('id',$id); 
      $query=$this->db->get('student_basic_info'); 
      foreach($query->result() as $re){ 
       echo $re->f_name." ".$re->l_name; 
      } 
     ?> 
    </td> 
    <td><?php echo $r->class_name?></td> 
    <td><?php echo $r->section?></td> 
</tr> 
<?php endforeach;?> 
<tr class="no"> 
    <td class="no"><input type="submit" value="Submit" name="action"></td> 
</tr> 
    </form> 

+0

Посмотрите [здесь] (http://stackoverflow.com/questions/8814723/passing-checkbox-values-to-mysql-database-using-codeigniter), и запустить вставки и удаления в транзакции, если вы собираетесь делать как при подаче данной формы! – quickshiftin

ответ

2

Что вы можете сделать, это добавить два флажка в настоящее время и отсутствует Тогда цикл через каждый из них и вставить данные

Также Если вы хотите один флажок, то вы можете сделать id_ (число) в качестве имени флажка и отправить скрытое значение идентификатора пользователя таким же образом. Наконец, отправьте общее количество пользователей как скрытое tooo.

<?php 
$i = 1; 
foreach($result as $r):?> 
<tr> 
    <td><input type="checkbox" name="id_$i" id="id_$i" value="<?php echo $r->sid ?>"/></td> 
    <td><?php echo $id=$r->sid ?></td> 
    <td> 
     <?php 
      $this->db->where('id',$id); 
      $query=$this->db->get('student_basic_info'); 
      foreach($query->result() as $re){ 
       echo $re->f_name." ".$re->l_name; 
      } 
     ?> 
    </td> 
    <td><?php echo $r->class_name?></td> 
    <td><?php echo $r->section?></td> 
</tr> 
//Here is the user id 
<input type="hidden" name="user_$i" value="your user id"> 
<?php 

$i++; 
endforeach;?> 

//now send the total users again in hidden field 
<input type="hidden" name="totalusers" value="<?php echo $i; ?>"> 


//NOw in our php script 

for($i=1;$i<=$_POST['totalusers'];$i++){ 
    if(isset($_POST["id_$i"])) 
      //this means the user is present add it to database as your requirement 
    else{ 
     //this means the checkbox was not checked so 
     //for this we get the unchecked users id from $_POST["user_$i"] 
     //now add to the database for this user as absent 
     } 
} 
+0

благодарит вашу логику для меня ... –

Смежные вопросы