Udover den populære anbefaling om ikke at bruge mysql_*-funktioner,
skal du sørge for, at du ikke har mellemrum i dine array-elementer.
Her er et eksempel på kode til at fjerne og fejlfinde forespørgslen ved hvert trin.
<?php
$elements = array(' element A', "\t Element B \r\n");
var_dump($elements);
/*
use var_dump to check your array elements for whitespace and such
array(2) {
[0]=>
string(11) " element A"
[1]=>
string(14) " Element B
"
}
*/
// create your IN clause string and verify it
$joinedString = "('" . join("','",array_map('trim',$elements)) . "')";
var_dump($joinedString);
/*
use var_dump not echo
string(25) "('element A','Element B')"
*/
// your query string finally becomes
$query = "SELECT * FROM smoelenboek
WHERE sectie1 IN $joinedString
OR sectie2 IN $joinedString
OR sectie3 IN $joinedString
OR sectie4 IN $joinedString
OR sectie5 IN $joinedString
AND actief='ja' ORDER BY achternaam ASC";
// and check it with var_dump and also run it in PhpMyAdmin
var_dump($query);
/*
string(280) "SELECT * FROM smoelenboek
WHERE sectie1 IN ('element A','Element B')
OR sectie2 IN ('element A','Element B')
OR sectie3 IN ('element A','Element B')
OR sectie4 IN ('element A','Element B')
OR sectie5 IN ('element A','Element B')
AND actief='ja' ORDER BY achternaam ASC"
*/