Oto mój kod:
$statement = $pdo->prepare('SELECT u.id AS idu, u.login AS nick, u.name AS name, u.date AS reg, p1.profit AS profit1, p2.profit AS profit2 FROM `'.$cfg_prefix.'users` AS u LEFT JOIN `'.$cfg_prefix.'profitinday` AS p1 ON (p1.nick = u.login AND p1.date = :date1) LEFT JOIN `'.$cfg_prefix.'profitinday` AS p2 ON (p2.nick = u.login AND p2.date = :date2) WHERE u.id > 0'); $statement->bindValue(':date2', $yesterday, PDO::PARAM_STR); $statement->execute(); $st3 = $statement->fetchAll(); for($i=0;$i<$st3count;$i++){ if($st3[$i]['profit1'] == null){ $st3[$i]['profit1'] = 0; } if($st3[$i]['profit2'] == null){ $st3[$i]['profit2'] = 0; } if($st3[$i]['name'] == null){ $st3[$i]['name'] = '<i>nie podano</i>'; } echo $st3[$i]['idu'].' -- '.$st3[$i]['nick'].' -- '.$st3[$i]['name'].' -- '.$st3[$i]['profit1'].'PLN -- '.$st3[$i]['profit2'].'PLN</br>'; }
zwraca on:
Kod
ID -- Nick -- Name -- Dzis -- Wczoraj
1 -- DEFAULT_RATE -- nie podano -- 0PLN -- 0PLN
2 -- test -- Testowy Tester -- 0PLN -- 0PLN
3 -- Anonim -- nie podano -- 0PLN -- 39.78PLN
1 -- DEFAULT_RATE -- nie podano -- 0PLN -- 0PLN
2 -- test -- Testowy Tester -- 0PLN -- 0PLN
3 -- Anonim -- nie podano -- 0PLN -- 39.78PLN
a w bazie są 2 rekordy w tabeli profitinday:
Kod
id nick profit date
18 Anonim 39.78 22.07.2013
19 Anonim 8.86 23.07.2013
18 Anonim 39.78 22.07.2013
19 Anonim 8.86 23.07.2013
czyli powinno się wyświetlać:
Kod
3 -- Anonim -- nie podano -- 8.86PLN -- 39.78PLN
proszę o pomoc.