Drop-down met optie "geen voorkeur"

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Karin php

Karin php

07/04/2009 12:38:00
Quote Anchor link
Hallo

Ik heb een menu gemaakt met meerdere drowdown opties waarmee ik een database wil doorzoeken op veldnamen. Nu wil ik dat als de gebruiker in een dropdown niks selecteert er ook niet op dat criterium gezocht wordt.

Dus als je bijvoorbeeld in een dropdown "kleuren" je de optie rood, paars, groen, etc. hebt, als je niks selecteert het criterium kleuren niet wordt meegenomen en je dus alleen de resultaten van andere criteria zal zien ongeacht de kleur.

Kan iemand mij helpen?
 
PHP hulp

PHP hulp

14/05/2024 03:08:15
 
- SanThe -

- SanThe -

07/04/2009 12:40:00
Quote Anchor link
Wat heb je al aan relevant stuk code.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 
Dennis Mertens

Dennis Mertens

07/04/2009 12:41:00
Quote Anchor link
Dit kan je d.m.v. PHP doen (anders word je query zo onduidelijk, vooral voor beginners).

Je kan met een ifje controleren en dan een variabele aanmaken met een deel van de query erin.
 
Arjan Kapteijn

Arjan Kapteijn

07/04/2009 12:42:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
if(!empty($_POST['dropdown']))
{

//doe iets
}else{
//doe niks
}
?>
 
Karin php

Karin php

07/04/2009 13:38:00
Quote Anchor link
sorry, maar ik weet niet hoe je een stuk code inplakt.

Dat laaste van Arjan klinkt veel belovend, maar hoe zorg je er dan voor dat de rest van je opties wel worden meegenomen in de query? Het moet sowieso iets doen! Je kan de $POST[] niet aan een variabele $kleur toekennen, maar dan loopt de query vast omdat het een onbekende variabele tegenkomt.

Dus als je een query hebt in de vorm van SELECT, FROM, WHERE, moet in de WHERE statement afhankelijk van het aantal geselecteerde opties een of meerdere criteria worden meegenomen.

hopelijk verduidelijkt dit het een en ander.

hoe kun je een deel van een query in een ifje zetten?
 
Yorick17

yorick17

07/04/2009 13:46:00
Quote Anchor link
je kunt de query toch variabel maken. Zet de vars (niet rechtstreeks) gewoon in je query.
 
Kitty N

kitty N

07/04/2009 13:51:00
Quote Anchor link
Ik doe het weleens zo:

Maak een sql command aan, zonder where constructie. Daarna koppel ik ze aan elkaar.

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
17
18
19
20
21
22
23
<?php
$sql
= "SELECT ... FROM ...";


$where = "";
if($_POST['kleur'] !== "")
{

   $where = " WHERE kleur = " . $_POST['kleur'];
}

if($_POST['optie'] !== "")
{

   if($where == "")
  {

       $where = " WHERE optie = " . $_POST['optie'];
   }

   else
  {
      $where .= " AND optie = " . $_POST['optie'];
   }
}


$sql .= $where;
?>


snap je dit zo een beetje? Misschien hebben andere nog een optie? Of hoe het beter kan.
Gewijzigd op 01/01/1970 01:00:00 door kitty N
 
Karin php

Karin php

08/04/2009 21:49:00
Quote Anchor link
met if($_POST['optie'] !== "") lukt het! dank je
ik had eerst een if(isset($_POST['optie']), daarmee ging het niet . wel de naam maar niet de query. nu lukt het, bedankt.
 



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.