代码点火器:正确选择选项返回,但控制器错误地处理结果


Codeigniter: Select Option return correctly but controller processes the results wrongly

我有一个视图,可以正确返回HTML中选择选项的结果。控制器应使用所选选项加载特定视图。
登录视图

    <div class="form-group">
        <select class="form-control" name="system">
           <option>--SYSTEM SELECT--</option>
           <option>Malaria</option>
           <option>Familiy Planning</option>
          <option>Laboratory</option>
      </select>
   </div>

在控制器上,当我访问名称值并使用它来处理数据时,它做错了。
登录控制器

    $system = $this->input->post('system');
        //if i echo system it will echo the correct value
        if($system = 'Malaria'){
         //view mal file
         $this->load->view('mal');
        }
        else if($system = 'Family Planing){
          $this->load->view('fp');
        }else{
          $this->load->view('error');
        }
    }

即使控制器返回计划生育,控制器仍会加载视图"mal"模板$system。

$system = 'Malaria'//将值疟疾分配给$system

为了进行比较,请使用此运算符 ==。它是一个测试的运算符 相等并返回boolean

$system == 'Malaria'

更改自

$system = $this->input->post('system');
        //if i echo system it will echo the correct value
        if($system = 'Malaria'){
         //view mal file
         $this->load->view('mal');
        }
        else if($system = 'Family Planing){
          $this->load->view('fp');
        }else{
          $this->load->view('error');
        }
    }

$system = $this->input->post('system');
        //if i echo system it will echo the correct value
        if($system == 'Malaria'){
         //view mal file
         $this->load->view('mal');
        }
        else if($system == 'Family Planning'){
          $this->load->view('fp');
        }else{
          $this->load->view('error');
        }
    }
您的 If 条件

是糟糕的。 请戴上适当的 If 条件,

 if($system == 'Malaria'){
         //view mal file
         $this->load->view('mal');
        }
        else if($system == 'Family Planing'){
          $this->load->view('fp');
        }else{
          $this->load->view('error');
        }

在您的代码中,$system再次分配。使其查看错误的文件。正确是if($system == "string")

错误已解决问题是我用了一个=而不是==在

使用 == 代替=进行比较
而且您在else if语句中缺少一个引号,

更正它:

if($system == 'Malaria'){
     //view mal file
     $this->load->view('mal');
    }
    else if($system == 'Family Planning'){
      $this->load->view('fp');
    }else{
      $this->load->view('error');
    }

仅供参考

选择选项应具有值。喜欢

<select class="form-control" name="system">
       <option value="">--SYSTEM SELECT--</option>
       <option value="Malaria">Malaria</option>
       <option value="Family Planning">Family Planning</option>
      <option value="Laboratory">Laboratory</option>
  </select>