Functie weergeeft volledig result niet.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jasper DS

Jasper DS

31/10/2011 11:31:26
Quote Anchor link
Beste,

ik probeer de resultaten van mijn 1ste functie te gebruiken in mijn 2de functie maar het werkt niet..

Functie's:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
function get_rapporten()
{

    $sql_get_rapporten =    "SELECT report_id, klantid, klantnaam, bezoek_datum, verzonden, werkgever
                             FROM visit_report
                             WHERE userid = '"
.$_SESSION['gebruikersid']."'
                            "
;
    
    if(($result_get_rapporten = mysql_query($sql_get_rapporten)) === false)
    {

        return showSQLError($sql_get_rapporten,mysql_error(),'<div class="error">Ophalen van rapporten is mislukt.</div>');
    }

    elseif(mysql_num_rows($result_get_rapporten) < 1 )
    {

        return '<div class="info">U hebt nog geen rapporten aangemaakt.</div>';
    }

    else
    {
        $gegevens = mysql_fetch_assoc($result_get_rapporten);
        return $gegevens;
    }
}

function
weergeef_rapporten($result_get_rapporten)
{

    $rapporten = '<table class="paginate sortable full">
                        <thead>
                            <tr>
                                <th>Klantennummer</th>
                                <th>Naam</th>
                                <th>Bezoekdatum</th>
                                <th>Bedrijf</th>
                                <th>Verzonden</th>
                            </tr>
                        </thead>
                        
                        <tbody>'
;    
        
                            foreach($result_get_rapporten as $result_rapport)
                            {

                                $rapporten .= '<tr><td><a href="verwerk_rapport.php?id='.$result_rapport['report_id'].'">'.$result_rapport['klantid'].'</a></td><td>'.$result_rapport['klantnaam'].'</td><td>'.$result_rapport['bezoek_datum'].'</td><td>'.$result_rapport['werkgever'].'</td><td>'.(($result_rapport['verzonden'] == 1) ? '<img src="../images/vinkje.gif" alt="ja" />' : '<img src="../images/kruisje.gif"  alt="nee"/>').'</td></tr>';
                            }

                        $rapporten .= '</tbody>
                    </table>'
;
    return $rapporten;                
}

?>


Ik roep de functie dan zo aan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo weergeef_rapporten(get_rapporten());
?>

maar ik merkte dat alleen de eerste tekens van mijn result weergeven werden.

dus dan heb ik nog eens appart getest:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$rapport
= get_rapporten();
                
foreach($rapport as $rap)
{

    cho $rap['report_id'].'<br/>';;
}
        
?>


en dan kwam ik op:
1 => report_id (bevat maar 1 teken)
K => klant_id K komt van K00016
B => naam , B komt van Bedrijf 1
2 => ...
 
PHP hulp

PHP hulp

19/04/2024 09:53:39
 
Jelmer -

Jelmer -

31/10/2011 11:46:26
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$gegevens = mysql_fetch_assoc($result_get_rapporten);
return $gegevens;

Hier geef je één resultaat terug, en dan return -> stopt je functie. Normaal heb je hier een while-lus omheen. Je krijgt nu wel een array terug, maar eentje met array('report_id' => 1, 'klant_id' => 'K00016'). Jij verwacht een array met allemaal van dat soort arrays erin.

Simpele oplossing:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
...
else
{
    $resultaten = array();
    
    while ($gegevens = mysql_fetch_assoc($result_get_rapporten))
        $resultaten[] = $gegevens;
    
    return $resultaten;
}
Gewijzigd op 31/10/2011 11:46:53 door Jelmer -
 
Jasper DS

Jasper DS

31/10/2011 12:22:04
Quote Anchor link
Achja, inderdaad! Bedankt Jelmer!

Toevoeging op 31/10/2011 20:48:39:

Ik struikelen nog altijd over een probleem.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$test
= get_rapporten();
echo $test['klantid'];
?>


Undefined index: klantid in

het lijkt er op dat de array leeg is?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.