2013-07-29 59 views
0

我目前在Yii上工作。我想檢查一下,如果某個值存在於數據庫中,則回顯一些其他的東西save into database如何解決調用未定義的方法stdClass :: save()

我做:

$model = Users::model()->findByAttributes(array('googleid'=>$google_id)); 
     if($model) 
     { 
      echo "Good"; 
     } 
     else 
     { 
      echo $model->googleid = $google_id; 

        $model->save(); 
     } 

但是當我運行該代碼,然後我得到錯誤:

Fatal error: Call to undefined method stdClass::save() in E:\wamp\www\customers\protected\views\users\googlelogin.php on line 76 

什麼可能是這種錯誤的原因,我無法弄清楚,請幫助我

在此先感謝

+2

什麼,如果沒有匹配的記錄的findByAttributes的回報?我猜這是因爲在調用'$ model-> googleid = $ google_id'時隱式創建一個對象。 – Maerlyn

+0

@Maerlyn得到答案,謝謝你的迴應 –

+1

你應該打開php的通知,所以你會看到類似''注意:從空值創建默認對象「。 – 2013-07-29 13:29:58

回答

1

我得到了解決方案,我正在做一個mi股權是$模型,返回NULL值,我在這個模型insterting值,以下解決方案使我的工作:

$model = Users::model()->findByAttributes(array('googleid'=>$google_id)); 
if($model) 
{ 
    echo "Good"; 
} 
else 
{ 
    $model_new = new Users; 
    echo $model_new->googleid = $google_id; 
    $model_new->save(); 
} 

感謝您的答覆

相關問題