2011-09-02 2 views
0

나는 메일 주소로 식별 된 각 사용자에 대한 포인트를 추가하고자합니다. 포인트는 사용자가 작업을 수행 할 때마다 추가되며, 다른 작업에 대해 다른 포인트가 있으며 매일 모든 포인트를 합산해야합니다. 내가하고 싶은 일이고 내가 젠드에서 일하고있는 또 하나의 일이다.각 사용자에 대한 포인트 추가

public function sumPoint($user_email) 
{ 



    $select = $this->getAdapter()->select() 
      ->from('tbl_points', array('sum(points)')) 
      ->where('emailAddress = ?', $user_email) 
      ->order('createdOn DESC'); 


     $totalpoints= $this->getAdapter()->fetchOne($select); 
    } 

정확한지 확실하지 않습니다.

+1

작동하지 않습니까? – Rijk

+0

그래서 각 사용자는 db 테이블에서'points' 열에 값을 가진 행을 가질 수 있습니까? 그리고 특정 사용자에 대한'points' 값의 총합을 원하십니까? – ChrisA

+0

아니요 null을 반환합니다 – reddy

답변

0

왜 데이터베이스의보기를 사용하여이 문제를 해결하지 않습니까?

뭔가 같은 : 다음

CREATE VIEW V_USERS AS (
    SELECT a.*, 
    (SELECT SUM(points) FROM tbl_points where tbl_points.emailAdress = a.emailAdress) sumPoints 
    FROM your_user_table a 
); 

그리고, 젠드에, 당신은 항상 확인 포인트의 수를 얻을 수 있습니다, 그래서 당신은 'V_USERS'에위한 인증 테이블을 설정, 그것을 당신이 할 피할 수 혼자서 처리하십시오.

관련 문제