プロが教えるわが家の防犯対策術!

cakePHP2.2でSQLが実行できません。
実行のやり方が悪いのでしょうが
ネットで探してもイマイチ理解できません・・

やりたいのは画面から入力された値を使い
SQLを実行することです。

何が駄目なのか教えてください。

controllerのソース

<?php

class BuhinController extends AppController {

public $layout = 'user_default';


//## ログイン処理
public function login(){

$bool = false;
$rslt = null;

Configure::write('debug', 1);

$sql = "select id from table_user where add = '". $_POST["add"] . "' ";
$sql = $sql. " and pass = '". $_POST["pass"] . "'";

$this->query($sql);


}

public function index(){
}

public function logout(){
$this->Auth->logout();
}
}
?>

エラーメッセージ


Fatal Error
Error: Call to undefined method BuhinController::query()
File: C:\xampp\htdocs\cake\app\Controller\BuhinController.php

よろしくお願いします。

A 回答 (1件)

controller から直接SQL文を発行するようにはなってないです。


controller のpropatyにdefaultで登録されているmodelオブジェクトからquery()メソッドを呼び出して下さい。
modelにしても直接SQL文を作成&発行しなくてもいいようにfindメソッドが実装されているので、マニュアル読んでからやった方がいいですよ。
http://book.cakephp.org/2.0/ja/cakephp-overview/ …
    • good
    • 0
この回答へのお礼

findメソッドを使用してデータ取得ができました!
ありがとうございました。

お礼日時:2013/01/22 12:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!