使用Codeigniter中的foreach循环更新字段不起作用

时间:2018-07-05 22:06:32

标签: php codeigniter

我遇到一个问题,我正在尝试使用codeigniter更新列中的字段,我使用foreach循环显示数据库的结果,然后我想添加一个名为“重新激活”的按钮来更改该列的状态,问题是它会更新所有字段,而我只想更新我单击的行,但它会更改所有其他帐户的“状态”,我不知道如何解决此问题。提前致谢。 这是我的看法:

div class='container'>
      <h5>Histórico</h5>
    <table id='table' class='table'>
     <thead>
      <tr>       
        <th>INTERNO</th>
        <th>CLABE</th>
        <th>FECHA_ALTA</th>
        <th>FECHA_BAJA</th>
        <th>STATUS</th>
        <th>ACCIÓN</th>
     </thead>
      <tbody>
<?php
        foreach ($mos-> result() as $row) {
          echo "<tr>";
                echo "<td>".$row->Interno;"</td>";
                echo "<td>".$row->Clabe;"</td>";
                  echo "<td>".$row->Fecha_alta;"</td>";
                  echo "<td>".$row->Fecha_baja;"</td>";
                  echo "<td>".$row->Status;"</td>"; 
                echo "<td><input type='submit' id='ReActivar' name='ReActivar' class='btn btn-success' value='ReActivar' onclick='return validacion();' disabled><span id='msg'></span></td>";
         "</tr>";  
         }
      ?>    
  </tbody>
</table>
</div>

这是我的控制者:

function decision(){
      if (!empty($_POST['actualizar'])) {
     $this->validaclabe();
      }

    if (!empty($_POST['Desactivar'])) {
   $this->update_Status();
}

if (!empty($_POST['ReActivar'])) {
   $this->update_Status_again();
}
}

function update_Status_again() 
{
     $this->load->helper('date'); 
      date_default_timezone_set('America/Mexico_City'); 
      $now = date('Y-m-d H:i:s');    
    $Interno = $this->input->post('Interno');
    $Status = $this->input->post('activo');

     $data = array(
     'Status' =>  ! empty($Status) ? $Status : 'A',
    'Fecha_alta' => $now,
  );

    //$data['status'] = ! empty($Status) ? $Status : 'I';
    if ( ! empty($Interno))
    {
        $updated = $this->consultas_M->update_Status($Interno, $data);
        if($updated)
        {
           //echo " update successful...";
           $this->logueado();
           //redirect('index.php/Datos/search2');
        }
        else
        { echo "update not successful...";}  
    } else
    { echo "Interno  not found ..."; }    
}

这是模型:

function muestra_inactivos($Interno)
     {  $Status = 'A';
        //$Interno = $this->input->get('Interno');
        $this->db->select('Interno, Clabe, Fecha_alta, Fecha_baja, Status');
        $this->db->where('Status !=', $Status);
        $this->db->where('Interno =', $Interno);
    $q= $this->db ->get('cuentas');
  if($q -> num_rows() >= 0){
    return $q;
  }else{
    return false;
  }
  }

 function update_Status_again($Interno,$data)
{
   $this->db->where('Interno', $Interno);
   return $this->db->update('cuentas', $data);
   if ( $this->db->affected_rows() > 0 )
   {
      return TRUE;
   }
   else 
   {
     return FALSE;
   }

}

这也是一张图片,我也不知道为什么一个按钮被禁用而另一个按钮未被禁用。webpage

0 个答案:

没有答案