2009-12-24 3 views
0

위 또는 아래로 투표 할 때마다 1을 설정합니다. 하지만 투표 할 때마다 votes_up = votes_up + 1 inkrements를 원합니다. 매번 투표가 1로 설정됩니다. 해결 방법?

는 PHP 코드

결과는

아래로 투표입니다

public function voteUp($id) 
    { 
    $this->initDB(); 

    $q="update twitter.tweets set vote_up=vote_up+1 where id=$id"; 
    $this->db->query($q); 
    } 

: 1

까지 투표 : 1

총 투표 수 : 내가 어떻게 해결할 수 18

그 아래 투표와 위 투표는 잉크로 기록됩니까?

답변

2

$ id를 설정하지 않았거나 잘못된 것이 있습니다. 이 SQL은 괜찮아 보인다. .

+0

id가 올바르므로 id는 모두 잘못되었습니다. id가 틀리면 투표를 설정할 수 없습니다. – streetparade

+1

콘솔에서 SQL을 실행 해 보셨습니까? 왜냐하면 나는 그것이 잘 작동 할 것이기 때문이다. –

+0

죄송합니다 템플릿 문제 그래서 귀하의 답변을 올바른 pls 내가 투표 할 수 있도록 귀하의 답변을 편집하고 – streetparade

0

기본적으로 동일한 구조의 voteDown() 기능이 있다고 가정합니다. 아마도 그것은 불필요하게 불려질 수도 있습니다.

데이터베이스 구조를 살펴 보셨습니까? 아마도 vote_up 열의 데이터 형식이 잘못되었을 수 있습니다. 나는 타입이 int unsigned not null default 0 이길 바란다고 생각합니다.

관련 문제