hallo ik heb een menutje in een zoekformulier met provincies..

maar nu wil graag dat er bovenaan "heel nederland" staat en als je die kiest dat ie dan geen waarde mee geeft zodat ie alle items van alle provincies weergeeft.

Als ik nu op "heel nederland" klik dan geeft ie de waarde "heel nederland" mee en daar zoekt ie dan in in het veld "provincie"

hoe los ik dat op?
dat weten wij niet zonder relevante code
value ="" meegeven, en een if(empty()) met een andere $query.
dit is het formpje:


<form name="form1" method="post" action="paginas/opvragen.php">
  <select name="group1">
    <option value=" ">Heel Nederland</option>
    <option>Drenthe</option>
    <option>Flevoland</option>
    <option>Friesland</option>
    <option>Gelderland</option>
    <option>Groningen</option>
    <option>Limburg</option>
    <option>Noord-Brabant</option>
    <option>Noord-Holland</option>
    <option>Overijssel</option>
    <option>Utrecht</option>
    <option>Zeeland</option>
    <option>Zuid-Holland</option>
  </select>
  <br>
  <br>
  <select name="group2">
    <option>Attractiepark</option>
					<option>soort1</option>
                    <option>soort2</option>
                    <option>soort3</option>
                     </select>
  <br>
  <br>
  <input type="submit" name="Submit" value="Zoeken">
</form>


en dit is de query van de resultatenpagina (opvragen.php):
als group1 (provincie) dus geen waarde heeft houd hij daar geen rekening mee want kiest hij query1



	if(!isset($_POST['group1']) || empty($_POST['group1']))
	{
		$sql = "SELECT id,naam,plaats,soort FROM dagjes WHERE soort LIKE '%$HTTP_POST_VARS[group2]%' ORDER BY naam ASC";
	}
	else
	{
	    $sql = "SELECT id,naam,plaats,soort FROM dagjes WHERE provincie LIKE '%$HTTP_POST_VARS[group1]%' AND soort LIKE '%$HTTP_POST_VARS[group2]%' ORDER BY naam ASC"; 
	}
     
    //--- Voer SQL code uit 
    $res = mysql_query($sql) or die(error_message("Query : $sql niet uit kunnen voeren")); 



zoals je ziet heeft het menutje in het form een waarde "heel nederland" hoe krijg ik het nu zo dat er geen rekening word gehouden met de provincies?

ben ik uberhaupt nog te volgens :s

<option value="heel nederland">Heel Nederland</option>

Zet dit even bij de select-options en klaar ben je.

Ps. domme vraag, dom antwoord... Sorry
volgens mij is de vraag niet zo dom als jou antwoord sorry
ik heb het voor elkaar!
bedankt.. er zat dus een spatie in de value die er uit moest
cindy schreef op 09.08.2007 12:50
volgens mij is de vraag niet zo dom als jou antwoord sorry
Dat kan wel zijn, maar zonder enige kennis van jouw systeem kan niemand raden wat de oplossing zou kunnen zijn.

Het enige dat jij hoeft te doen, is de query zo aanpassen dat er geen WHERE-clausule wordt opgenomen wanneer 'heel nederland' wordt geselecteerd.

if(waarde == 'heel nederland'){
  select * from tabelnaam
}
else {
  select * from tabelnaam WHERE kolom = waarde
}

Dit mag je zelf in PHP en SQL gaan uitwerken.

Edit: $HTTP_POST_VARS[group1] mag je vervangen door $_POST['group1']. $HTTP_POST_VARS[] is flink verouderd en vervangen door $_POST[]
ok bedankt pgfrank maar ik had het al voor de bakker..

ik hoef eigenlijk helemaal niets aan mn query te veranderen zoalng de value maar "" is. Dan geeft ie geen waarde mee en neemt ie alle provincies.

dat van http_post had ik al ergens gelezen maar dacht dat het geen kwaad kon. toch ff veranderd.

Reageren