Hallo phphulp
Ik zit met een probleem:

$geslacht = "";
if($_POST['geslacht'] != "geen")
   {
        $geslacht = "geslacht = '".$_POST['geslacht']."' AND";
   }
$land = "";
if($_POST['land'] != "geen")
   {
        $land = "land = '".$_POST['land']."' AND";
   }
$sLid = mysql_query("SELECT * FROM leden WHERE ".$geslacht." ".$land." leeftijd BETWEEN '".$min."' AND  '".$max."'") or die(mysql_error());

   
        if(mysql_num_rows($sLid) == 0)
        {
            echo "Er zijn geen zoekresultaten voor jouw opgave.";
        }
        else 
        {


Heb ik, alleen als ik geen voorkeur in doe (die de value geen heeft) dan pakt ie hem niet.

Weet iemand wat ik fout doe, aangezien als ik bijvoorbeeld dit doe:

Geslacht: geen voorkeur
Land: belgie

Dan selecteert ie niets, terwijl er genoeg belgen in de db staan.

Kan iemand mij helpen?
gokje: belgie staat met een hoofdletter in de db.

verder: ga normaliseren, scheelt je een hoop rotzooi. Ik vermoed ook dat je de leeftijd gewoon als een getal erin zet, terwijl dit een berekende waarde zou moeten zijn van de geboortedatum tot nu. Verder zou je de landen in een aparte tabel moeten zetten, ipv de namen in je tabel. Dat voorkomt dus het geklooi met hoofdletters e.d.

edit: en wmc is een stukje verderop, dit is phphulp
*block*

Edit
Ah, Terrence had al gereageerd. Ben dus niet de enige die het is opgevallen.
Nee, Belgie staat in de db als be. En zo staat het ook in de form.
Echo je query eens, of voer hem uit in pMA, daar hebben we meer aan.
Dominic schreef op 20.08.2008 11:17
Nee, Belgie staat in de db als be. En zo staat het ook in de form.


België staat als be? Welke waarde krijgt de $_POST['land'] dan? Als bijv $_POST['land'] "België" is en in je database staat "be", dan retourneert de query hier al een false.

edit
ow zo staat het ook in de form.
Heb je dit dmv een selectbox gedaan, dus

<select name="land">
<option value="be">België</option>
</select>

En is de leeftijd wel correct.
Het is dus handig om je query even te posten (zoals degene hierboven ook al zei).

Reageren