Multi zoek / filter functie
Hallo allemaal
Ik heb een MYSQL DB, waarin ik de volgende kolommen heb:
- ID
- locatie
- karakter
- backdrop
- shot
- vrijstaand
- bewerkt
- houding
Nu wil ik een zoekfunctie bouwen, met dit formulier http://toxtv.be/lilalanddb/
Een zoekfunctie maken lukt me wel, maar zodra er meerdere dingen tegelijk gekozen moeten worden, loop ik vast.
Tips?
Groetjes Tommy
Ik heb een MYSQL DB, waarin ik de volgende kolommen heb:
- ID
- locatie
- karakter
- backdrop
- shot
- vrijstaand
- bewerkt
- houding
Nu wil ik een zoekfunctie bouwen, met dit formulier http://toxtv.be/lilalanddb/
Een zoekfunctie maken lukt me wel, maar zodra er meerdere dingen tegelijk gekozen moeten worden, loop ik vast.
Tips?
Groetjes Tommy
Wat heb je tot zover gemaakt? Misschien is het handig om zowel je PHP code als query te laten zien.
Er zit nog geen php code aan, het is puur het formulier om te laten zien wat ik ermee wil.
en de db is
-- phpMyAdmin SQL Dump
-- version 3.4.3.2
-- http://www.phpmyadmin.net
--
-- Machine: localhost
-- Genereertijd: 07 aug 2011 om 14:31
-- Serverversie: 5.1.57
-- PHP-Versie: 5.2.17
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `db2855_liladieren`
--
-- --------------------------------------------------------
--
-- Tabelstructuur voor tabel `Dieren`
--
CREATE TABLE IF NOT EXISTS `Dieren` (
`foto-id` text NOT NULL,
`Karakter` text NOT NULL,
`shot` text NOT NULL,
`vrijstaand` text NOT NULL,
`houding` text NOT NULL,
`bewerkt` text NOT NULL,
`gebruikt` text NOT NULL,
`backdrop` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Gegevens worden uitgevoerd voor tabel `Dieren`
--
INSERT INTO `Dieren` (`foto-id`, `Karakter`, `shot`, `vrijstaand`, `houding`, `bewerkt`, `gebruikt`, `backdrop`) VALUES
('oparick1.tiff', 'Opa Rick', 'Boven', 'Nee', 'Zittend', 'Nee', '', 'zwart'),
('konijnrood1.tiff', 'Konijn Rood', 'Boven', 'Nee', 'Zittend', 'Nee', '', 'groen');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<b>Karakter</b><div id="karakter">
<form method="post" action="filter.php">
<input type="radio" name="Karakter" value="Opa Rick"/>Opa Rick
<input type="radio" name="Karakter" value="Konijn Rood" style="margin-left:100px"/>Konijn Rood
</form>
<b>Kleur backdrop:</b> <select name="selectlist">
<option value="Groen">Groen</option>
<option value="Zwart">Zwart</option>
<option value="Blauw">Blauw</option>
<option value="Wit">Wit</option>
</select>
<br>
<b>Shot:</b><select name="selectlist">
<option value="Boven">Boven</option>
<option value="Onder">Onder</option>
<option value="Zijkant">Zijkant</option>
</select>
<br>
<b>Vrijstaand:</b>
<input type="radio" name="vrijstaand" value="Ja"/>Ja
<input type="radio" name="vrijstaand" value="Nee" style="margin-left:100px"/>Nee
<br>
<b>Bewerkt:</b>
<input type="radio" name="bewerkt" value="Ja"/>Ja
<input type="radio" name="bewerkt" value="Nee" style="margin-left:100px"/>Nee
</div>
<br>
<b>Houding:</b><select name="selectlist">
<option value="Zittend">Zittend</option>
<option value="Liggend">Liggend</option>
<option value="Staand">Staand</option>
<option value="Zwevend">Zwevend</option>
</select>
<br>
<input type="submit" id="sendbtn" value="Filter" class="sendbtn">
</form>
<form method="post" action="filter.php">
<input type="radio" name="Karakter" value="Opa Rick"/>Opa Rick
<input type="radio" name="Karakter" value="Konijn Rood" style="margin-left:100px"/>Konijn Rood
</form>
<b>Kleur backdrop:</b> <select name="selectlist">
<option value="Groen">Groen</option>
<option value="Zwart">Zwart</option>
<option value="Blauw">Blauw</option>
<option value="Wit">Wit</option>
</select>
<br>
<b>Shot:</b><select name="selectlist">
<option value="Boven">Boven</option>
<option value="Onder">Onder</option>
<option value="Zijkant">Zijkant</option>
</select>
<br>
<b>Vrijstaand:</b>
<input type="radio" name="vrijstaand" value="Ja"/>Ja
<input type="radio" name="vrijstaand" value="Nee" style="margin-left:100px"/>Nee
<br>
<b>Bewerkt:</b>
<input type="radio" name="bewerkt" value="Ja"/>Ja
<input type="radio" name="bewerkt" value="Nee" style="margin-left:100px"/>Nee
</div>
<br>
<b>Houding:</b><select name="selectlist">
<option value="Zittend">Zittend</option>
<option value="Liggend">Liggend</option>
<option value="Staand">Staand</option>
<option value="Zwevend">Zwevend</option>
</select>
<br>
<input type="submit" id="sendbtn" value="Filter" class="sendbtn">
</form>
en de db is
-- phpMyAdmin SQL Dump
-- version 3.4.3.2
-- http://www.phpmyadmin.net
--
-- Machine: localhost
-- Genereertijd: 07 aug 2011 om 14:31
-- Serverversie: 5.1.57
-- PHP-Versie: 5.2.17
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `db2855_liladieren`
--
-- --------------------------------------------------------
--
-- Tabelstructuur voor tabel `Dieren`
--
CREATE TABLE IF NOT EXISTS `Dieren` (
`foto-id` text NOT NULL,
`Karakter` text NOT NULL,
`shot` text NOT NULL,
`vrijstaand` text NOT NULL,
`houding` text NOT NULL,
`bewerkt` text NOT NULL,
`gebruikt` text NOT NULL,
`backdrop` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Gegevens worden uitgevoerd voor tabel `Dieren`
--
INSERT INTO `Dieren` (`foto-id`, `Karakter`, `shot`, `vrijstaand`, `houding`, `bewerkt`, `gebruikt`, `backdrop`) VALUES
('oparick1.tiff', 'Opa Rick', 'Boven', 'Nee', 'Zittend', 'Nee', '', 'zwart'),
('konijnrood1.tiff', 'Konijn Rood', 'Boven', 'Nee', 'Zittend', 'Nee', '', 'groen');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Je zal eerst moeten beginnen met de informatie die uit het formulier komt in te lezen en te controleren of het voldoet aan de criteria. Is kleur wel wat het mag zijn? is het groen of zwart? Voldoet alles dan kan je een query uitvoeren met de pre-condities.
Dus trial-and-error en je komt er denk ik wel. Mocht het niet lukken kom je weer terug en post je je php code.
Dus trial-and-error en je komt er denk ik wel. Mocht het niet lukken kom je weer terug en post je je php code.
ik begrijp enigszins de logica, maar niet in php-taal.
Dan is het tijd voor een tutorial. :)




