Witaj,
<?php
$this->ipsclass->DB->simple_construct( array( 'update' => 'members', 'set' => 'fg=IF(id='.$this->ipsclass->input['to_id'].', fg+'.$this->ipsclass->input['amount'].', fg-'.$this->ipsclass->input['amount'].')',
'where' => 'id IN (''.$this->ipsclass->input['to_id'].'','.$this->ipsclass->member['id'].')' ) );
$this->ipsclass->DB->simple_exec();
?>
Trochę kodu PHP z kodem IP.Board podam, ale powinieneś łatwiej zrozumieć. Oto logika:
Są 2 osoby. Jedna np. chcę kupić przedmiot ( gra ), i aby tego wykonać musi wysłać FG ( Forum Gold dlatego nazwa FG ), jej musi odjąć od konta i tamtemu ma podać tą kwotę. Chyba do tej pory jasne? :-) Po co to id w IF? I jak działa IN, skoro są 3 parametry?
$this->to_id - ID osoby, do której FG jest przekazywane
$this->ipsclass->member['id'] - moje ID, osoby która aktualnie jest zalogowana i wysłała FG
$this->ipsclass->input['amount'] - kwota
Rozumiesz teraz problem? Nie mówiąc o dupnej składni zapytanie ( $this->ipsclass->DB->do_update ) to na dodatek nie ten typ funkcji :-)
Pozdrawiam,
Largo