0

こんにちは、PHP で SQL フィールドの合計を見つけようとしています。この合計は、コントローラーで JavaScript から受け取った数値以下でなければなりません。しかし、私の SQL 構文は PHP では機能しません。代わりに、データベースからすべての行をフェッチします。

public function feedbackaverageAction(){                
    $value =$_GET['value'];
    $db = Zend_Registry::get('dbadapter');
    $select = new Zend_Db_Select($db);
    $select = $db->select();
    $select->from(array('feedback' => 'feedback'),
                   array ('customdata',
                          'checkinprocess',
                          'service_by_owner',
                          'locationrating',
                          'cleanlinessrating',
                          'valueformoneyrating',
                          'kitchenequipmentrating'));
    $select->where('feedback.checkinprocess' + 
                   'feedback.service_by_owner' + 
                   'feedback.locationrating' +
                   'feedback.cleanlinessrating' +
                   'feedback.valueformoneyrating' +
                   'feedback.kitchenequipmentrating' <= $value);
    $stmt = $select->query();
    $result = $stmt->fetchAll();
    $this->view->rows = $result;
}

合計を見つけて、コントローラーで取得した値にチェックする方法を教えてください。

4

1 に答える 1

0

このコードを試して、このような SQL クエリを作成してください。

$value = $_GET['value'];
$db = Zend_Registry::get('dbadapter');
$select = new Zend_Db_Select($db);
$select = $db->select();

$select->from(array('feedback' => 'feedback'),array ('customdata','checkinprocess','service_by_owner','locationrating','cleanlinessrating','valueformoneyrating','kitchenequipmentrating'));

$select->where(new Zend_Db_Expr('feedback.checkinprocess'+'feedback.service_by_owner'+'feedback.locationrating'+'feedback.cleanlinessrating'+'feedback.valueformoneyrating'+'feedback.kitchenequipmentrating')<= $value);

$stmt = $select->query();

$result = $stmt->fetchAll();

$this->view->rows = $result;
于 2012-09-26T12:32:02.250 に答える