0

必须填写表单字段“room_number”、“pos_token”、“banquet_token”中的任何一个才能继续。那是要求,我编写了这段代码,结果与代码的其他部分发生冲突,它根本不起作用。

$room_number = $this->input->post('room_number');
$pos_token = $this->input->post('pos_token');
$banquet_token = $this->input->post('banquet_token');

if(isset ($room_number) && strlen($room_number) && ($pos_token) && strlen($pos_token) && ($banquet_token) && strlen($banquet_token) ) {
    return true;
    }
else {
    return true;
    }
4

4 回答 4

3

您需要为输入字段设置规则

$this->form_validation->set_rules('username', 'Username', 'required');
if ($this->form_validation->run() == FALSE)
  {
    //run your code on success here
  }
else
  {
    //run your code on failure here
  }
于 2013-07-04T05:58:52.587 回答
2

false您需要在条件失败时返回,例如

if(isset ($room_number) && strlen($room_number) && ($pos_token) && strlen($pos_token) && ($banquet_token) && strlen($banquet_token) ) {
    return true;
}
else {
    return false;
}

对于您的情况,您需要检查以下OR情况

if( ( isset ($room_number) && strlen($room_number)) || 
    ( isset ($pos_token) && strlen($pos_token)) || 
    ( isset ($banquet_token) && strlen($banquet_token))
  ) {
于 2013-07-04T05:42:53.020 回答
1

只需||在 if 语句中使用 OR 运算符。false如果测试失败则返回。

$room_number = $this->input->post('room_number');
$pos_token = $this->input->post('pos_token');
$banquet_token = $this->input->post('banquet_token');

 if(!empty($room_number) || !empty($pos_token) || !empty($banquet_token))
    return true;
else 
    return false;
于 2013-07-04T05:44:13.217 回答
0
$room_number = $this->input->post('room_number');   
$pos_token = $this->input->post('pos_token');
$banquet_token = $this->input->post('banquet_token');

if($room_number=="" || $pos_token=="" || $banquet_token=="")
    return true;
else 
    return false;
于 2017-12-15T09:34:13.900 回答