第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

檢查表 codeigniter 中是否已經(jīng)存在兩個(gè)值

檢查表 codeigniter 中是否已經(jīng)存在兩個(gè)值

PHP
MMTTMM 2021-11-26 19:30:31
我試圖檢查表中兩列中是否存在一個(gè)值。列名是 on_number 和 off_number。我在我的控制器中嘗試了以下操作。但是,該檢查僅適用于 off_number 列而不適用于 on_number。我的控制器。 public function check()        {            $on_number = !empty(get('on_number')) ? get('on_number') : false;            $notId = !empty($this->input->get('notId')) ? $this->input->get('notId') : 0;            if($on_number)                $exists = count($this->duty_book_model->getByWhere([                        'on_number' => $on__number,                        'id !=' => $notId,                    ])) > 0 ? true : false;                if($on_number)                $exists = count($this->duty_book_model->getByWhere([                        'off_number' => $on_number,                        'id !=' => $notId,                    ])) > 0 ? true : false;            echo $exists ? 'false' : 'true';        } My Model     class Duty_book_model extends MY_Model {        public $table = 'tbl_duty_type';        public function __construct()        {            parent::__construct();        }    }擴(kuò)展 MY_Model 具有:public function getByWhere($whereArg, $args = [])    {        if(isset($args['order']))            $this->db->order_by($args['order'][0], $args['order'][1]);        return $this->db->get_where($this->table, $whereArg)->result();    }如果值存在,我希望它檢查兩列。
查看完整描述

2 回答

?
HUWWW

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊

我相信它對(duì)“off_number”不起作用的原因在于這段代碼


if($on_number)

$exists = count($this->duty_book_model->getByWhere([

          //THE NEXT LINE IS THE PROBLEM - LOOK AT THE VALUE!!!

          'off_number' => $on_number, //value should be $off_number - right?

          'id !=' => $notId,])) > 0 ? true : false;

也就是說,我認(rèn)為您的代碼一團(tuán)糟。我這么說是因?yàn)橐袷?MVC 模式,您的控制器邏輯的很多都應(yīng)該在模型中。海事組織,這一切都應(yīng)該是。


我會(huì)getByWhere()用一個(gè)名為check(). 如果有'id!= $notId AND'on_number' = $on__number` AND off_number', $off_number 的記錄,它將返回 true 。如果缺少任何一個(gè)必需的輸入,或者沒有找到記錄,則返回 false。


當(dāng)您查看以下代碼時(shí),重要的是要了解$this->input->get('some_input')如果$_GET('some_input')為空則返回 null 。


class Duty_book_model extends MY_Model

{

    public $table = 'tbl_duty_type';


    public function check()

    {

        $on_number = $this->input->get('on_number');

        $notId = $this->input->get('notId');

        if(empty($on_number) || empty($notId))

        {

            return false;

        }


        $query = $this->db

                ->select('id')  //could be any field

                ->where('id !=', $notId)

                ->where('on_number', $on__number)

                ->where('off_number', $off_number) 

                ->get($this->table);

        //given $notId = 111 AND $on_number = 222 AND $off_number = 333           

        //produces the query string 

        //SELECT `id` FROM `tbl_duty_type` WHERE `id` != 111 AND `on_number` = 222 AND `off_number` = 333


        if($query) //might be false if the query string fails to work

        {

            return $query->num_rows > 0; //returns boolean

        }


        return false;

    }


}

那么你在控制器中所需要的就是


$exists = $this->duty_book_model->check();

echo $exists ? 'false' : 'true';


查看完整回答
反對(duì) 回復(fù) 2021-11-26
?
慕容森

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊

首先,你有一個(gè)錯(cuò)字 'on_number' => $on__number, 你已經(jīng)加倍下劃線$on__number


第二件事 - 您的支票僅適用于的原因off_number是因?yàn)槟?exist在兩種情況下都使用了變量。對(duì)于 的檢查結(jié)果是什么并不重要on_number,因?yàn)樗偸菚?huì)被off_number檢查重寫。


解決這些問題的一種方法是使用兩個(gè)不同的變量:


if($on_number){

   $exists_on = count($this->duty_book_model->getByWhere([

      'on_number' => $on_number,

      'id !=' => $notId,

   ])) > 0 ? true : false;


   $exists_off = count($this->duty_book_model->getByWhere([

      'off_number' => $on_number,

      'id !=' => $notId,

   ])) > 0 ? true : false;

}

echo (($exists_on===true)&&(exists_off===true)) ? 'false' : 'true';

這不是最好的解決方案,但它必須是最清楚的。


查看完整回答
反對(duì) 回復(fù) 2021-11-26
  • 2 回答
  • 0 關(guān)注
  • 208 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)