2013-12-12 88 views
-2

我可以知道,除了Save()函數之外,還有其他方式來存儲SQL語句嗎? 我想做一些簡單的計算,我想將結果存儲在數據庫中。 任何人有任何想法呢?CakePHP沒有保存()函數?

public function add() { 
    if ($this->request->is('post')) { 

     /// complete calculation 

     $data1 = (string) $this->request->data['Calculate']['var1']; 
     $data2 = (string) $this->request->data['Calculate']['var2']; 

     echo $data1; 
     echo '<br/>'; 
     echo $data2; 

     $result = $data1 + $data2; 

     echo '<br/>'; 
     echo $result; 

     SQL Statement 
     mysql_query("INSERT INTO calculate VALUES('$data1','$data2','$result','2')") or die(mysql_error()); 
     // if($this->Calculate->save($this->request->data)){ 

     //  echo'succuful add'; 


     // } 
    } 
} 
+1

http://book.cakephp.org/2.0/en/tutorials-and-examples .html – Dave

+0

戴夫,我已經完成了教程。 – user3072727

+0

你知道虛擬字段在第378頁第8章 cakephp cookbook文檔,發佈2.x – user3072727

回答

3

對不起,但你做錯了。

使用Cake的全部意義在於它包含一個數據庫抽象層,它處理SQL語法的所有混亂細節,SQL注入攻擊以及許多其他好處。

如果您在保存前需要處理一種特殊的方式你的數據,你可以做這樣的事情:

$calculateDetails = array(
    'Calculate' => array(
     'field1' => $data1, 
     'field2' => $data2, 
     'field3' => $result, 
     'field4' => '2' 
    ) 
); 

$this->Calculate->save($calculateDetails); 
+0

感謝您的幫助。我的程序使用這種方法工作,你的解決方案是非常好的....非常感謝你.... – user3072727

+0

先生,我會盡我所能改善更多〜 – user3072727

+0

哦先生。用戶,沒關係。我們都必須從某個地方開始,通常這樣做是爲了獲得我們習慣的代碼,並與蛋糕一起工作。堅持下去,你會到達那裏:-) –