SQL operators in een mysql query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Max Boer

Max Boer

18/12/2018 18:17:51
Quote Anchor link
Hallo allemaal,

Ik heb een database waarin ik een tabel heb met de kolom "Goedgekeurd".
Nu wil ik alles van deze tabel laten zien in een <select> als het niet "Ja" is of als er niets in staat.
IK heb daarvoor de volgende code:
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
<form method="post">
    <?php
$vak
=$_SESSION['user']['vak'];
?>

<form method="post">
    Pta:
    <select name="pta">
    <?php
    $resultaat
= mysqli_query($mysql,"SELECT * FROM ptas WHERE (Goedgekeurd<>Ja OR Goedgekeurd is null) AND vak_afkorting='$vak' ORDER BY Klas,Periode") or die("De query op de database is mislukt!");
    while ($rij = mysqli_fetch_assoc($resultaat)){
        echo "<option value=\"{$rij['pta_id']}\">{$rij['vak_afkorting']} {$rij['Periode']} {$rij['Klas']} {$rij['Schooljaar']} {$rij['Toets']} {$rij['Onderwerp']}</option>";
    }

    ?>

    </select><br>
    <input type="submit" value="Pta veranderen" name="verzend" />
    </form>


Ik heb het geprobeerd met

WHERE (Goedgekeurd<>'Ja' OR Goedgekeurd is null) AND vak_afkorting='$vak'
en
WHERE (Goedgekeurd!='Ja' OR Goedgekeurd is null) AND vak_afkorting='$vak'

Weet iemand een kloppende SQL query hiervoor?
Alvast bedankt,
Max

Toevoeging op 18/12/2018 18:25:28:

Ik heb hem al, het werkt weer
Gewijzigd op 18/12/2018 18:21:40 door Max Boer
 
PHP hulp

PHP hulp

19/05/2019 09:31:27
Honeypot
 
Adoptive Solution

Adoptive Solution

18/12/2018 19:14:22
Quote Anchor link
In regel 9 moet Ja tussen '' staan => 'Ja'
 
Thomas van den Heuvel

Thomas van den Heuvel

18/12/2018 22:34:05
Quote Anchor link
Euh, waarom is geen numerieke kolom die NULL mag zijn?

1 = ja
0 = nee
null = (nog) niet ingevuld

:/
Gewijzigd op 18/12/2018 22:34:17 door Thomas van den Heuvel
 
- Ariën -
Beheerder

- Ariën -

19/12/2018 00:00:37
Quote Anchor link
Ik zou ervoor kiezen om een INT te gebruiken die je 0 of 1 noemt, of een NULL kan geven.
Dan kan je veel makkelijker in PHP checken. 'Ja' is wat anders dan een 'ja'. Een 0 is en blijft gewoon een 0.
 
Thomas van den Heuvel

Thomas van den Heuvel

19/12/2018 00:53:49
Quote Anchor link
Yep, gebruik BOOL als kolomtype, dat is een alias voor TINYINT(1) (of gebruik rechtstreeks TINYINT(1), wat waarschijnlijk beter is dan het gebruik van een alias).
 



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.