2016-10-07 96 views
-1

我在同一時間面臨多個請求的問題。我正在檢查數據庫,如果此數據存在,則不插入相同的記錄。CakePHP多重請求

使用CakePHP

$userdata = $this->MobappFan->find('first', array(
            'conditions' => array(
             'MobappFan.id' => 123, 
             'MobappFan.mobapp_id' => 234, 
             'MobappFan.deleted' => 0 
            ), 
            'fields' => array('MobappFan.id', 'MobappFan.status', 'MobappFan.blocked'), 
            'contain' => false 
           ) 
          ); 
if(!$userdata) { 
    $this->MobappFan->save($this->request->data); 
} 

但是2.6版本由於使用相同的參數相同的請求無法找到現有的記錄。

請幫

感謝

+0

你能澄清你的意思嗎?「由於同樣的請求...無法找到現有記錄」?這不清楚。 – Dave

回答

-1

我覺得基本上你只是想在當前檢查張貼ID

你可以做到這一點,如下

$userdata = $this->MobappFan->find('first', array(
           'conditions' => array(
            'MobappFan.id' => 123, 
            'MobappFan.id !=' => $this->request->data['MobappFan']['id'], 
            'MobappFan.mobapp_id' => 234, 
            'MobappFan.deleted' => 0 
           ), 
           'fields' => array('MobappFan.id', 'MobappFan.status', 'MobappFan.blocked'), 
           'contain' => false 
          ) 
         ); 
if(!$userdata) { 
     $this->MobappFan->save($this->request->data); 
} 

$userdata = $this->MobappFan->find('first', array(
           'conditions' => array(
            'MobappFan.id' => 123, 
            "NOT" => array('MobappFan.id' => $this->request->data['MobappFan']['id']), 
            'MobappFan.mobapp_id' => 234, 
            'MobappFan.deleted' => 0 
           ), 
           'fields' => array('MobappFan.id', 'MobappFan.status', 'MobappFan.blocked'), 
           'contain' => false 
          ) 
         ); 
if(!$userdata) { 
    $this->MobappFan->save($this->request->data); 
} 

希望這有助於。如果你能解釋更多你需要什麼,那麼我可以寫出更好的條件,或者你可以查看詳細信息here

+0

有一個條件來檢查一個特定的ID是沒有意義的,然後用一個條件來跟蹤它,以確保它不是一個特定的ID。一個或另一個,但不是兩個。 – Dave

+0

是的,我同意,實際上提供的細節不清楚,這就是我向rahul詢問具體要求的原因。 –