problem med dubletter i array (CI/PHP)

Permalänk
Medlem

problem med dubletter i array (CI/PHP)

Hallå.

Jag testar här först då jag tror detta är ett rent tankefel och inte problem med CI.

Ser ut enligt följande:

function get_documents($section){ $query = $this->db->query("SELECT DISTINCT flow, section FROM documents WHERE section = '$section' ORDER BY flow ASC"); foreach($query->result_array() as $row) { $flowName = $row['flow']; $query2 = $this->db->query("SELECT * FROM documents WHERE section = '$section' AND flow = '$flowName' ORDER BY date DESC"); foreach($query2->result_array() as $row2) { $flows[] = array ( 'date' => $row2['date'], 'user' => $row2['user'], 'header' => $row2['header'], 'flow' => $row2['flow'], 'section' => $row2['section'], 'document' => $row2['document'] ); } $arrFlows[$flowName] = $flows; } return $arrFlows; }

problemet jag får är att den returnar dubbelt av första svaret från första queryn.

dvs.

array1
array1
array2
array3
osv.

kan någon se vart jag missat?

Och föresten, finns det något lättare sätt att bygga denna på?

edit:
slängde in lite testdata och här kommer arrayn. Som ni ser så kommer det dubletter i underarray 2 (TestFlöde2) som redan skrivits ut i testflöde 1.

Array ( [TestFlöde] => Array ( [0] => Array ( [date] => 1259077792 [user] => 1 [header] => crazy christmas [flow] => TestFlöde [section] => hoga_radet [document] => Crazy_Christmas_2.doc ) [1] => Array ( [date] => 1259074844 [user] => 1 [header] => fvsd [flow] => TestFlöde [section] => hoga_radet [document] => avatar.jpg ) ) [TestFlöde2] => Array ( [0] => Array ( [date] => 1259077792 [user] => 1 [header] => crazy christmas [flow] => TestFlöde [section] => hoga_radet [document] => Crazy_Christmas_2.doc ) [1] => Array ( [date] => 1259074844 [user] => 1 [header] => fvsd [flow] => TestFlöde [section] => hoga_radet [document] => avatar.jpg ) [2] => Array ( [date] => 1259079232 [user] => 1 [header] => nytt dokument [flow] => TestFlöde2 [section] => hoga_radet [document] => crazy_cristmaz_2009_first.jpg ) [3] => Array ( [date] => 1259078001 [user] => 1 [header] => bombay [flow] => TestFlöde2 [section] => hoga_radet [document] => bombay.txt ) ) )

Visa signatur

Jag hatar att vara förkyld!

Permalänk
Medlem

varför kör du flera sqls? all datan kan ju hämtas i den första och sedan bara loopa igenom den och lägga de som du vill ha i en ny array?

Prova o tänka så istället

Permalänk
Medlem

Ska det inte vara:

$flows = array [...}

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607