HTML tabel maken aan de hand van SQL data

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Twan T

Twan T

10/10/2008 16:39:00
Quote Anchor link
Voor een website gebruik ik nu steeds mijn editor om een tabel op de site te updaten. Ik zou dit graag vanuit een database doen.

Er zijn drie tabellen:

1 Tabel met labels x as ( Team 1 / Team 2 / Team 3 als data)
1 Tabel met labels y as ( Aanwezig / Tellen / Schoonmaken / enz )
1 Tabel met x,y coordinaten 1,1 - 1,2 - 1,3 2,2-2,3 3,1

De laatste tabel heeft als doel: Als ID 1 van tabel 1 & ID 1 van tabel 2 gelijk zijn dan X anders een - als afbeelding in de tabel.

Hierin kan dus heel snel worden aangegeven Team 1 moet Aanwezig zijn, schoonmaken en tellen. Team 2 Tellen en schoonmaken team 3 alleen aanwezig zijn)


Hoe ik het hebben wil weet ik maar nu hoe moet ik het maken, hiervoor zoek ik even een opzetje / duw in de juiste richting.

Dit is een voorbeeld van de tabel:
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<table width="1230" border="4">
  <tr>
    <td width="15%">&nbsp;</td>
    <td width="15%">Team  1</td>
    <td width="15%">Team 2</td>
    <td width="15%">Team 3</td>
    <td width="15%">Team  4</td>
  </tr>
  <tr>
    <td>Schoonmaken</td>
    <td>x</td>
    <td>x</td>
    <td>x</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Tellen</td>
    <td>x</td>
    <td>&nbsp;</td>
    <td>x</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Afwassen</td>
    <td>x</td>
    <td>x</td>
    <td>&nbsp;</td>
    <td>x</td>
  </tr>
  <tr>
    <td>Enz</td>
    <td>&nbsp;</td>
    <td>x</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Twan T
 
PHP hulp

PHP hulp

06/05/2021 23:33:52
 
Joren de Wit

Joren de Wit

10/10/2008 16:50:00
Quote Anchor link
Een opzetje:
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
<?php
$aData
= array(
    'Schoonmaken' => array(1, 2, 3),
    'Aanwezig' => array(1, 2, 3, 4),
    'Tellen' => array(4)
);


echo '<table>
        <tr>
            <td></td>
            <td>Team 1</td>
            <td>Team 2</td>
            <td>Team 3</td>
            <td>Team 4</td>
        </tr>'
;

foreach($aData as $sActivity => $aTeams)
{

    echo '<tr>';
    echo '<td>'.$sActivity.'</td>';
    
    for($i = 1; $i <= 4; $i++)
    {

        if(in_array($i, $aTeams))
        {

            echo '<td>x</td>';
        }

        else
        {
            echo '<td></td>';
        }
    }

    
    echo '</tr>';
}


echo '</table>';
?>

Als je het op deze manier wilt aanpakken, zul je er zelf nog wel voor moeten zorgen dat je de data in het juiste formaat uit de database haalt. Uiteraard kun je dit nog verder dynamisch maken, door bijvoorbeeld ook het aantal teams te bepalen adhv gegevens uit de database.
 
- SanThe -

- SanThe -

10/10/2008 16:57:00
Quote Anchor link
@Twan: Pas je post even aan en gebruik en tags om je code heen. Om php code zet je uiteraard dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php en ?>
Gebruik je http://www.phphulp.nl/imgs/forum/edit.gif knop om dit te doen.

SanThe.
 
Twan T

Twan T

10/10/2008 17:31:00
Quote Anchor link
@Blanche Bedankt voor je voorbeeld, nu wordt het nog een hele puzzel om alles idd uit de database te halen. En te verwerken, ik wil het uiteindelijk zo hebben dat alles uit te breiden is.

@Uitgevoerd SanThe
 



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.