fixing bug in left join

This commit is contained in:
/jedi/ 2018-12-28 13:12:52 +01:00
commit 53697a231d
3 changed files with 14 additions and 7 deletions

View file

@ -20,9 +20,13 @@ function auth(){
return true;
}
function get_founditems(){
function get_founditems($onlyUnmatched = false){
global $mysqli;
$res = $mysqli->query("SELECT * FROM items LEFT JOIN matches ON items.id = matches.f_id WHERE matches.f_id IS NULL ORDER BY id ASC");
if ($onlyUnmatched) {
$res = $mysqli->query("SELECT items.* FROM items LEFT JOIN matches ON items.id = matches.f_id WHERE matches.f_id IS NULL ORDER BY items.id DESC");
} else {
$res = $mysqli->query("SELECT * FROM items ORDER BY id ASC");
}
$ret = array();
while ($row = $res->fetch_assoc()) {
$ret[] = $row;
@ -30,9 +34,13 @@ function get_founditems(){
return $ret;
}
function get_lostitems(){
function get_lostitems($onlyUnmatched = false){
global $mysqli;
$res = $mysqli->query("SELECT * FROM lost LEFT JOIN matches ON lost.id = matches.l_id WHERE matches.l_id IS NULL ORDER BY id ASC");
if ($onlyUnmatched) {
$res = $mysqli->query("SELECT lost.* FROM lost LEFT JOIN matches ON lost.id = matches.l_id WHERE matches.l_id IS NULL ORDER BY lost.id DESC");
} else {
$res = $mysqli->query("SELECT * FROM lost ORDER BY id ASC");
}
$ret = array();
while ($row = $res->fetch_assoc()) {
$ret[] = $row;
@ -68,7 +76,6 @@ function get_stats(){
if ($row = $res->fetch_assoc()) {
$ret["match"] = $row["c"];
}
$ret["unmatched"] = $ret["found"] + $ret["lost"] - (2 * $ret["match"]);
return $ret;
}

View file

@ -46,7 +46,7 @@
</tfoot>
<tbody>
<?php
foreach( get_lostitems() as $item){
foreach( get_lostitems(true) as $item){
?>
<tr>
<td><?php echo $item["id"]; ?></td>

View file

@ -44,7 +44,7 @@
</tfoot>
<tbody>
<?php
foreach( get_founditems() as $item){
foreach( get_founditems(true) as $item){
?>
<tr>
<td><?php echo $item["id"]; ?></td>