Beste,

Ik loop tegen het volgende aan. Ik heb een zoek systeem wat geïntegreerd zit in Wordpress.
Op zich werkt dit prima, zij het dat bepaalde zoekresultaten niet goed doorkomen.

Wanneer ik bijvoorbeeld bij de zoekoptie kies voor Provincie: Noord-Brabant en Categorie: Workshops & Cursussen
dan komt de klant die eigenlijk in deze categorie hoort te staan niet naar voren.

Wanneer ik enkel filter op Noord Brabant wel, maar niet met beide filters actief..

Nu ben ik al actief bezig geweest met lezen van het script, en het bekijken van de queries maar ik kom er niet uit.
Ook is het zo als ik op de knop vorige druk in de browser, dat de zoekresultaten niet altijd goed terug komen.
Zie ook de afbeelding die ik heb toegevoegd.

Hopelijk kunnen jullie mij wegwijs helpen hoe ik dit op kan lossen, maw. duwtje in de juiste richting :)



De code waarmee de resultaten worden opgehaald:

<?php
mysql_connect("$host", "$username", "$password")or die($error1);
mysql_select_db("$db_name")or die($error2);

$search = $_GET['s'];
$pro = $_GET['pro'];
$cat = $_GET['cat'];
$post = $_GET['post'];
$kma =$_GET['km'];
$kmm = substr($kma, 4, -3);
$km = $kmm;
function dis(
$latitudeFrom, $longitudeFrom, $latitudeTo, $longitudeTo, $earthRadius = 6371000)
{
// convert from degrees to radians
$latFrom = deg2rad($latitudeFrom);
$lonFrom = deg2rad($longitudeFrom);
$latTo = deg2rad($latitudeTo);
$lonTo = deg2rad($longitudeTo);

$lonDelta = $lonTo - $lonFrom;
$a = pow(cos($latTo) * sin($lonDelta), 2) +
pow(cos($latFrom) * sin($latTo) - sin($latFrom) * cos($latTo) * cos($lonDelta), 2);
$b = sin($latFrom) * sin($latTo) + cos($latFrom) * cos($latTo) * cos($lonDelta);

$angle = atan2(sqrt($a), $b);
return $angle * $earthRadius;
}

function getLnt($zip){
$url = "http://maps.googleapis.com/maps/api/geocode/json?address=".urlencode($zip)."&sensor=false";

$result_string = file_get_contents($url);
$result = json_decode($result_string, true);

$result1[]=$result['results'][0];
$result2[]=$result1[0]['geometry'];
$result3[]=$result2[0]['location'];
return $result3[0];
}

?>

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
    <script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
</head>
<body>
<table class="hidden-xs table">
    <tr>
        <td width="20%" style="text-align: center;">
            Logo
        </td>
        <td width="40%" style="text-align: center;">
            Beschrijving
        </td>
        <td width="30%" style="text-align: center;">
           Informatie
        </td>
    </tr>
    <?
    if(empty($search)){
        if($cat == "Alle categorieen"){
            if($pro == "Alle provincies"){
                $h = mysql_query("SELECT * FROM ontdekking");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }else{
                $h = mysql_query("SELECT * FROM ontdekking WHERE pro = '$pro'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }
        }else{
            if($pro == "Alle provincies"){
                $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }else{
                $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND pro = '$pro'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }
        }
    }else{
        if($cat == "Alle categorieen"){
            if($pro == "Alle provincies"){
                $h = mysql_query("SELECT * FROM ontdekking WHERE zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }else{
                $h = mysql_query("SELECT * FROM ontdekking WHERE pro = '$pro' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }
        }else{
            if($pro == "Alle provincies"){
                $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }else{
                $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND pro = '$pro' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                $num_rows = mysql_num_rows($h);
                if($num_rows == 0){ ?>
                    <tr class="hidden-xs">
                        <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                    </tr>
                <?php } ?><?
            }
        }
    }
    $i= 0;
    while ($row = mysql_fetch_array($h)){?>
        <?
        if(empty($post)){?>
            <tr>
                <td style="text-align: center;">
                    <img width="150px" height="150px" src="<?echo $row['logo']?>">
                </td>
                <td style="text-align: center;">
                    <h1><?echo $row['naam']?></h1>
                    <p>
                        <?echo $row['info']?>
                    </p>
                </td>
                <td style="text-align: center;">
                    <center><button onclick="hideiframe(<? echo $row['id'] ?>);" type="button" style="height: 150px;width: 150px;" class="btn btn-warning">Informatie</button></center>
                </td>
            </tr>
        <?}else {
            if ($kma == "Selecteer afstand" OR $kma == "Geen Voorkeur") {
                ?>
                <tr>
                    <td style="text-align: center;">
                        <img width="150px" height="150px" src="<? echo $row['logo'] ?>">
                    </td>
                    <td style="text-align: center;">
                        <h1><? echo $row['naam'] ?></h1>

                        <p>
                            <? echo $row['info'] ?>
                        </p>
                    </td>
                    <td style="text-align: center;">
                        <center>
                            <button onclick="hideiframe(<? echo $row['id'] ?>);" type="button" style="height: 150px;width: 150px;"
                                    class="btn btn-warning">Informatie
                            </button>
                        </center>
                    </td>
                </tr>
            <?
            } else {
                $adress = $row['postcode'];
                $adres = str_replace(' ', '', $adress);
                $url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$adres&destinations=$post&mode=driving&language=en-EN&sensor=false";

                $data = @file_get_contents($url);
                $result = json_decode($data, true);

                $distance = array( // converts the units
                    "meters" => $result["rows"][0]["elements"][0]["distance"]["value"],
                    "kilometers" => $result["rows"][0]["elements"][0]["distance"]["value"] / 1000,
                    "yards" => $result["rows"][0]["elements"][0]["distance"]["value"] * 1.0936133,
                    "miles" => $result["rows"][0]["elements"][0]["distance"]["value"] * 0.000621371
                );

                $distancekm = round($distance['kilometers']);
                if ($distancekm < $km) {
                    ?>
                    <tr>
                        <td style="text-align: center;">
                            <img width="150px" height="150px" src="<? echo $row['logo'] ?>">
                        </td>
                        <td style="text-align: center;">
                            <h1><? echo $row['naam'] ?></h1>

                            <p>
                                <? echo $row['info'] ?>
                            </p>
                        </td>
                        <td style="text-align: center;">
                            <center>
                                <button onclick="hideiframe(<? echo $row['id'] ?>);" type="button" style="height: 150px;width: 150px;"
                                        class="btn btn-warning">Informatie
                                </button>
                            </center>
                        </td>
                    </tr>
                <?
                } else {
                    $a = $i++;
                }
            }
        }
            if($i == $num_rows){?>
                <tr class="hidden-xs">
                    <b class="hidden-xs"><center class="hidden-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                </tr>

            <?}
        ?>
    <?}?>
</table>


    <table class="visible-xs table">
        <tr>
            <td width="15%" style="text-align: center;">
                Logo
            </td>
            <td width="20%" style="text-align: center;">
                Beschrijving
            </td>
            <td width="20%" style="text-align: center;">
                Informatie
            </td>
        </tr>
        <?
        if(empty($search)){
            if($cat == "Alle categorieen"){
                if($pro == "Alle provincies"){
                    $h = mysql_query("SELECT * FROM ontdekking");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }else{
                    $h = mysql_query("SELECT * FROM ontdekking WHERE pro = '$pro'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }
            }else{
                if($pro == "Alle provincies"){
                    $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }else{
                    $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND pro = '$pro'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }
            }
        }else{
            if($cat == "Alle categorieen"){
                if($pro == "Alle provincies"){
                    $h = mysql_query("SELECT * FROM ontdekking WHERE zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }else{
                    $h = mysql_query("SELECT * FROM ontdekking WHERE pro = '$pro' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }
            }else{
                if($pro == "Alle provincies"){
                    $a = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }else{
                    $h = mysql_query("SELECT * FROM ontdekking WHERE cat = '$cat' AND pro = '$pro' AND zoekwoorden LIKE '%$search%' OR naam LIKE '%$search%'");
                    $num_rows = mysql_num_rows($h);
                    if($num_rows == 0){ ?>
                        <tr class="visible-xs">
                            <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                        </tr>
                    <?php } ?><?
                }
            }
        }
        while ($row = mysql_fetch_array($h)){?>
            <?
            if(empty($post)){?>
                <tr>
                    <td style="text-align: center;">
                        <img width="75px" height="75px" src="<?echo $row['logo']?>">
                    </td>
                    <td style="text-align: center;">
                        <h1 style="font-size: 20px;"><b><?echo $row['naam']?></b></h1>
                    </td>
                    <td style="text-align: center;">
                        <center><button type="button" onclick="hideiframe(<? echo $row['id'] ?>);" style="height: 75px;width: 75px;" class="btn btn-warning">Info</button></center>
                    </td>
                </tr>
            <?}else {
                if ($kma == "Selecteer afstand" OR $kma == "Geen Voorkeur") {
                    ?>
                    <tr>
                        <td style="text-align: center;">
                            <img width="75px" height="75px" src="<? echo $row['logo'] ?>">
                        </td>
                        <td style="text-align: center;">
                            <h1 style="font-size: 20px;"><b><? echo $row['naam'] ?></b></h1>
                        </td>
                        <td style="text-align: center;">
                            <center>
                                <button type="button" onclick="hideiframe(<? echo $row['id'] ?>);" style="height: 75px;width: 75px;"
                                        class="btn btn-warning">Info
                                </button>
                            </center>
                        </td>
                    </tr>
                <?
                } else {
                    $adres = $row['postcode'];
                    $url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$adres&destinations=$post&mode=driving&language=en-EN&sensor=false";

                    $data = @file_get_contents($url);
                    $result = json_decode($data, true);

                    $distance = array( // converts the units
                        "meters" => $result["rows"][0]["elements"][0]["distance"]["value"],
                        "kilometers" => $result["rows"][0]["elements"][0]["distance"]["value"] / 1000,
                        "yards" => $result["rows"][0]["elements"][0]["distance"]["value"] * 1.0936133,
                        "miles" => $result["rows"][0]["elements"][0]["distance"]["value"] * 0.000621371
                    );

                    $distancekm = round($distance['kilometers']);
                    if ($distancekm < $km) {
                        ?>
                        <tr>
                            <td style="text-align: center;">
                                <img width="75px" height="75px" src="<? echo $row['logo'] ?>">
                            </td>
                            <td style="text-align: center;">
                                <h1 style="font-size: 20px;"><b><? echo $row['naam'] ?></b></h1>
                            </td>
                            <td style="text-align: center;">
                                <center>
                                    <button onclick="hideiframe(<? echo $row['id'] ?>);" type="button" style="height: 75px;width: 75px;"
                                            class="btn btn-warning">Info
                                    </button>
                                </center>
                            </td>
                        </tr>
                    <?
                    }
                }
            }
            if($i == $num_rows){?>
                <tr class="hidden-xs">
                    <b class="visible-xs"><center class="visible-xs">Er zijn geen resultaten gevonden. Probeer het opnieuw.</center></b>
                </tr>

            <?}
            ?>
        <?}?>
    </table>
<script>
    function hideiframe(id){
        window.parent.document.getElementById('zoekbalk').style.display = 'none';
        var search = "<?echo$_GET['s']?>";
        var pro = "<?echo$_GET['pro']?>";
        var cat = "<?echo$_GET['cat']?>";
        var postcode = "<?echo$_GET['post']?>";
        var km = "<?echo$_GET['km']?>";
        var two = window.parent.document.getElementById('results');
        two.src = 'http://www.kinddeals.nl/info.php?s=' + search + '&pro=' + pro + '&cat=' + cat + '&post=' + postcode + '&km=' + km + '&id=' + id;
    }
</script>
</body>
</html>

Reageren