Hallo allemaal,
Ik zit ben bezig met het maken van wat ik een 'dynamische ' tabel noem, die hoofdzakelijk data uit een mysql database weergeeft. Zo sla ik een integer op in de database bij elke user. Die staat voor een bepaalde status:
VB '1' staat voor 'nieuw'
'2' staat voor 'al beken'
enzovoort. Dit leek me veiliger en gemakkelijker.
In mijn tabel wil ik natuurlijk niet deze nietszeggende cijfers, maar een betekenishebbende zin. Geen probleem, ik maak gewoon een simpele functie die dat omzet
De tabel wordt dan zo gemaakt
Dit lijkt allemaal logisch en correct, totdat ik de pagina bekijk in mijn browser: alle data van de statussen staat in één grote string geplakt boven de tabel, en de cellen in de tabellen (waar de data dus zou moeten staan) blijft leeg.
Hopelijk is dit niet te abstract en heeft iemand weet van dit probleem.
Alvast bedankt
Ik zit ben bezig met het maken van wat ik een 'dynamische ' tabel noem, die hoofdzakelijk data uit een mysql database weergeeft. Zo sla ik een integer op in de database bij elke user. Die staat voor een bepaalde status:
VB '1' staat voor 'nieuw'
'2' staat voor 'al beken'
enzovoort. Dit leek me veiliger en gemakkelijker.
In mijn tabel wil ik natuurlijk niet deze nietszeggende cijfers, maar een betekenishebbende zin. Geen probleem, ik maak gewoon een simpele functie die dat omzet
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
| function echoStatus($int){ switch ($int){ case 0: $feedback="<strong>Nieuw</strong>"; break; case 1: $feedback="<strong>Al Gedownloaded</strong>"; break; case 2: $feedback="<strong>Al Ingediend.</strong>"; break; case 3: $feedback="<strong>Te laat.</strong>"; break; default: die('An error has occured'); } echo $feedback; } |
De tabel wordt dan zo gemaakt
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| $query = "SELECT * FROM taken ORDER by id ASC "; $rows=$mysqli->query($query)->num_rows; if ($result = $mysqli->query($query)) { /* fetch associative array */ while ($row = $result->fetch_assoc()) { echo" <tr> <td>".$row['naam']."</td> <td>".echoStatus($row['status_leerling_1'])."</td> <td>".echoStatus($row['status_leerling_2'])."</td> <td>".echoStatus($row['status_leerling_3'])."</td> <td>".echoStatus($row['status_leerling_4'])."</td> <td>".echoStatus($row['status_leerling_5'])."</td> <td>".echoStatus($row['status_leerling_6'])."</td> <td>".echoStatus($row['status_leerling_7'])."</td> <td>".echoStatus($row['status_leerling_8'])."</td> <td>".echoStatus($row['status_leerling_9'])."</td> <td>".echoStatus($row['status_leerling_10'])."</td> </tr>"; |
Dit lijkt allemaal logisch en correct, totdat ik de pagina bekijk in mijn browser: alle data van de statussen staat in één grote string geplakt boven de tabel, en de cellen in de tabellen (waar de data dus zou moeten staan) blijft leeg.
Hopelijk is dit niet te abstract en heeft iemand weet van dit probleem.
Alvast bedankt