Hallo,

Ik wil graag een website opzetten waar men opzoek gaat naar het meest geschikte hondenras. Na het beantwoorden van ongeveer vijftien vragen moet dan uiteindelijk één hondenras eruit rollen.

Wie kan mij vertellen wat hiervoor het meest geschikte methode is?

Al vast bedankt.
Geert van der Heide
een database maken. met daarin alle honderassen en voorkeuren. Vervolgens laat je de vragen maken en laat je tjekke bij welke de meeste voorkeuren heeft.

weet niet of dat het handigste is maar dat zou ik doen
dus de databse zo:

=====================================
= = voorkeur 1 = voorkeur 2 = voorkeur 3 =
=====================================
=hondenras1 = = - = =
=====================================
=hondenras2 = = - = - =
=====================================
=hondenras3 = - = = =
=====================================
=hondenras4 = = - = =
=====================================
=hondenras5 = = = - =
=====================================

en dan laten tjekke wat eht best past
3 Tabellen:
rassen
- id INT PRIMARY KEY
- ras VARCHAR

eigenschappen
- id PRIMARY KEY
- eigenschap TEXT

koppeling
ras_id INT FOREIGN(rassen.id)
eigenschap_id INT FOREIGN(eigenschappen.id)

Na de vragen te hebben beantwoord, ga je kijken bij welk ras het meeste eigenschappen overeen komen.
Oké, klink erg moeilijk?
Ik kan wel een beetje php maar dan benadruk ik een "beetje"

Kan je misschien een klein voorbeeldje geven zodat ik daar weer verder op kan gaan?

Geert
Succes met ombouwen :)
Zoals je zei, makkelijk is het niet. Maar dit werkt, maar voor jouw eisen moet je het toch wat ombouwen...

Edit: Werkt niet goed zie ik nu, ik zal nog even puzzelen, maar je hebt iig een opzet.
Het lukt me nog niet, misschien weet iemand anders raad met de query... (Ik ga er echt niet meerdere querys van maken, het moet in 1 kunnen volgens mij :))
Ik denk dat met deze query alle rassen eruit komen op aflopende volgorde van de hoeveelheid voorkeurseigenschappen waar ze aan voldoen. Hij is niet getest.


SELECT
	r.ras_naam,
	COUNT(k.eigens_id) AS aant_passend
FROM
	rassen r,
	koppel k
WHERE
	r.ras_id = k.ras_id
AND
	k.eigens_id IN('".implode("','", $_POST['voorkeuren_ids'])."')
GROUP BY
	r.ras_id
ORDER BY
	aant_passend DESC


$_POST['voorkeuren_ids'] is uiteraard een array met daarin alle id's van de eigenschappen die een voorkeur hebben.

Reageren