[PHP] Probleem met array

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • rewind.
  • Registratie: Oktober 2001
  • Laatst online: 17-09 11:00
Hallo aan de hand van 2 query's probeer ik een array te vullen. Dit gaat goed echter word $dag[$i][$d]['inhoud'] nadat $info 1x afwezig is geweest steeds gevult met afwezig.

code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
$dag = array();
    $i = 0;
    $days = array('<b>ma</b>','<b>di</b>','<b>wo</b>','<b>do</b>','<b>vr</b>'); 
    foreach ($tbl_A as $rij)
    {
        $d = $rij["Dag"];
        $l = $rij["Uur"];
        foreach ($tbl_B as $rijB) 
        { 
            if($rij["Datum"] == $rijB["Datum"] && $rij["Uur"] == $rijB["Uur"])
            {
                $afw    = $rijB["Afwezig"];
                $telaat = $rijB["TeLaat"];
            }
            if (!empty($afw)) 
            {
                $info = "Afwezig: ".$afw."";
            } else if (!empty($telaat)) {
                $info = "Te laat: ".$telaat."";
            }
        }
        if (empty($info)) { $info = "Present"; }
        $dag[$i][$d]['pos'] = $l;
        $dag[$i][$d]['inhoud'] = $info;
        $i++;
        
    }
    print_r($dag);


geeft als output:

Array ( [0] => Array ( [1] => Array ( [pos] => 3 [inhoud] => Present ) ) [1] => Array ( [1] => Array ( [pos] => 4 [inhoud] => Present ) ) [2] => Array ( [1] => Array ( [pos] => 5 [inhoud] => Present ) ) [3] => Array ( [1] => Array ( [pos] => 6 [inhoud] => Present ) ) [4] => Array ( [1] => Array ( [pos] => 7 [inhoud] => Present ) ) [5] => Array ( [2] => Array ( [pos] => 1 [inhoud] => Present ) ) [6] => Array ( [2] => Array ( [pos] => 2 [inhoud] => Present ) ) [7] => Array ( [2] => Array ( [pos] => 3 [inhoud] => Afwezig: 1 ) ) [8] => Array ( [2] => Array ( [pos] => 4 [inhoud] => Afwezig: 1 ) ) [9] => Array ( [3] => Array ( [pos] => 1 [inhoud] => Afwezig: 1 ) ) [10] => Array ( [3] => Array ( [pos] => 2 [inhoud] => Afwezig: 1 ) ) [11] => Array ( [3] => Array ( [pos] => 3 [inhoud] => Afwezig: 1 ) ) [12] => Array ( [3] => Array ( [pos] => 4 [inhoud] => Afwezig: 1 ) ) [13] => Array ( [3] => Array ( [pos] => 5 [inhoud] => Afwezig: 1 ) ) [14] => Array ( [3] => Array ( [pos] => 6 [inhoud] => Afwezig: 1 ) ) [15] => Array ( [3] => Array ( [pos] => 8 [inhoud] => Afwezig: 1 ) ) [16] => Array ( [3] => Array ( [pos] => 9 [inhoud] => Afwezig: 1 ) ) [17] => Array ( [4] => Array ( [pos] => 1 [inhoud] => Afwezig: 1 ) ) [18] => Array ( [4] => Array ( [pos] => 2 [inhoud] => Afwezig: 1 ) ) [19] => Array ( [4] => Array ( [pos] => 3 [inhoud] => Afwezig: 1 ) ) [20] => Array ( [4] => Array ( [pos] => 4 [inhoud] => Afwezig: 1 ) ) [21] => Array ( [4] => Array ( [pos] => 5 [inhoud] => Afwezig: 1 ) ) [22] => Array ( [5] => Array ( [pos] => 3 [inhoud] => Afwezig: 1 ) ) [23] => Array ( [5] => Array ( [pos] => 4 [inhoud] => Afwezig: 1 ) ) [24] => Array ( [5] => Array ( [pos] => 5 [inhoud] => Afwezig: 1 ) ) [25] => Array ( [5] => Array ( [pos] => 6 [inhoud] => Afwezig: 1 ) ) [26] => Array ( [5] => Array ( [pos] => 7 [inhoud] => Afwezig: 1 ) ) [27] => Array ( [5] => Array ( [pos] => 8 [inhoud] => Afwezig: 1 ) ) )

Zoals te zien is vult [inhoud] zich dus met 'Afwezig: 1' zodra de waarde 1x gevonden is.. ik heb geprobeerd $info onderaan leeg te halen maar zelfs dat werkt niet. Waarschijnlijk zie ik een klein foutje over het hoofd maar ik kom er niet uit.

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Als je iets aan $afw assignt, is hij nog steeds geset tijdens een voldende iteratie van de loop en dus niet empty.

Als je nou gewoon de hulpvariabelen $afw en $telaat weg laat en puur $rijB["Afwezig"] en $rijB["TeLaat"] controleert, scheelt het je 2 hulpvariabelen en klopt het wel.

[ Voor 60% gewijzigd door Voutloos op 20-02-2006 09:01 ]

{signature}


Acties:
  • 0 Henk 'm!

  • rewind.
  • Registratie: Oktober 2001
  • Laatst online: 17-09 11:00
Bedankt! dat was inderdaad het probleem