Database invullen aan de hand van checkboxen...

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jelle

Jelle

29/03/2007 17:43:00
Quote Anchor link
Hoe kan ik een query aanmaken die enkel de aangevinkte opties in een database opslaat? Ik moet een klas_id linken aan een cursus_id. De klas_id is gewoon op te vragen maar de verschillende cursussen die ik moet linken aan die klas zijn aan de hand van checkboxen... hier zit ik volledig mee vast.

Hopelijk kan iemand mij op weg zetten... alvast bedankt!
 
PHP hulp

PHP hulp

12/12/2024 00:35:37
 
Frank -

Frank -

29/03/2007 17:51:00
Quote Anchor link
Jouw php-script ontvangt uitsluitend de aangevinkte opties. Wat is het probleem? De naamgevingen? Gebruik een array:

<input type=checkbox name=cursus[1] />
<input type=checkbox name=cursus[5] />
<input type=checkbox name=cursus[14] />
<input type=checkbox name=cursus[17] />

Op de server ontvang je $_POST['cursus'] met daarin de array met resultaten, bv. $_POST['cursus'][5] en $_POST['cursus'][14] wanneer nummer 5 en 14 zijn aangevinkt.

Doe er je voordeel mee!
 
Jan Koehoorn

Jan Koehoorn

29/03/2007 18:13:00
Quote Anchor link
Het kan ook nog op deze manier:
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
48
49
50
51
52
53
54
55
56
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Kies fruit</title>
    <style type="text/css">
    h1 {
        font: bold 14px verdana;
    }
    p, input, label {
        font: 12px verdana;
    }
    label {
        cursor: pointer;
    }
    </style>
</head>

<body>
    <h1>Kies fruit</h1>
    <form method="post" action="#">
        <p>
            <input id="appel" name="keuzes[]" type="checkbox" value="appel">
            <label for="appel">appel</label>
        </p>
        <p>
            <input id="peer" name="keuzes[]" type="checkbox" value="peer">
            <label for="peer">peer</label>
        </p>
        <p>
            <input id="banaan" name="keuzes[]" type="checkbox" value="banaan">
            <label for="banaan">banaan</label>
        </p>
        <p>
            <input id="citroen" name="keuzes[]" type="checkbox" value="citroen">
            <label for="citroen">citroen</label>
        </p>
        <p>
            <input id="avocado" name="keuzes[]" type="checkbox" value="avocado">
            <label for="avocado">avocado</label>
        </p>
        <p>
            <input type="submit" value="verzenden">
        </p>
    </form>
    <?php
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
            if (isset ($_POST['keuzes'])) {
                foreach ($_POST['keuzes'] as $keuze) {
                    echo '<p>' . $keuze . ' aangevinkt</p>';
                }
            }
        }

    ?>

</body>
</html>

Opmerkingen:

- Als je checkboxen in je form gebruikt, koppel ze dan aan labels. Mensen kunnen dan op de labels klikken om een checkbox aan te vinken. In het CSS deel zorg ik ook dat de muis in een handje verandert om het duidelijker te maken.
- Omdat elke checkbox als name keuzes[] heeft, maakt wordt er automatisch een array aangemaakt. Die array heet $_POST['keuzes'] en bevat de waardes van alle aangevinkte checkboxen.
 



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.