grauercorsar
Grünschnabel
Hallo,
ich habe ein Problem. Habe auch schon mehere Scriptcodes und Foren durchsucht, aber immer noch nicht das richtige gefunden.
Kurz zur Vorgeschichte.
Ich schreibe eine Firmendatenbank oder ein ähnliches elektr. Branchenbuch.
In diesem Branchenbuch können sich Firmen mit Ihrem Namen, Anschrift, url, Ansprchpartner... eintragen. das klappt auch alles und ist auch soweit fertig.
User oder auch Kunden sollen nun die Datenbank abfragen können.
Dies wollte ich mittels einer Stichwortsuche machen.
der User gibt einen oder mehere Begriffe in das Formular ein und alle Firmen mit den angegebenen Stichworten sollen ausgegeben werden.
Mit einem Stichwort ist das kein Problem, das klappt alles.
Doch ich schaffe es einfach nicht, dass man zwei oder auch mehrere Stichworte eingeben kann und dann genau nur der Firmenname ausgegeben wird, der nur diese beiden Stichworte enthält.
ich habe das erstmal so gelöst, um die Stichworte aufzsplitten:
Nun ist aber das Problem bei mir, dass wenn zwei oder mehrere Firmen den gleichen Inhalt in Ihrem Namen haben, dass diese dann ausgegeben werden.
Beispiel:
Firmen in Datenbank
Seniorenservice Max Mustermann
Gartenpflegegestaltung Hans Mustermann
Firma Heinz Mustermann
existieren. gesucht wird mit den Worten: garten mustermann
Dann würden bei meinem Code alle Firmen auftauchen.
gebe ich als suchworte mustermann garten
gibt er nur
Gartenpflegegestaltung Hans Mustermann
aus, da garten der zuletzt abgefragte Begriff in dem Array ist und somit wohl als letztes zählt, Denke ich mal ?
aber so soll es ja nicht sein, der user soll ja jede beliebige reihenfolge der stichworte eingeben können.
Es muss also noch eine andere Lösung geben um die suchbegriffe anders sla suchstring aufzuschlüsseln als in einem array? Oder vielleicht war mein Ansatz schon richtig und es fehlt nur noch eine Kleinigkeit?
Ich freue mich über jede Antwort!
Beste Grüße
ich habe ein Problem. Habe auch schon mehere Scriptcodes und Foren durchsucht, aber immer noch nicht das richtige gefunden.
Kurz zur Vorgeschichte.
Ich schreibe eine Firmendatenbank oder ein ähnliches elektr. Branchenbuch.
In diesem Branchenbuch können sich Firmen mit Ihrem Namen, Anschrift, url, Ansprchpartner... eintragen. das klappt auch alles und ist auch soweit fertig.
User oder auch Kunden sollen nun die Datenbank abfragen können.
Dies wollte ich mittels einer Stichwortsuche machen.
der User gibt einen oder mehere Begriffe in das Formular ein und alle Firmen mit den angegebenen Stichworten sollen ausgegeben werden.
Mit einem Stichwort ist das kein Problem, das klappt alles.
Doch ich schaffe es einfach nicht, dass man zwei oder auch mehrere Stichworte eingeben kann und dann genau nur der Firmenname ausgegeben wird, der nur diese beiden Stichworte enthält.
ich habe das erstmal so gelöst, um die Stichworte aufzsplitten:
PHP:
$such_array = explode(' ',$searchterm);
for($i=0; $i<count($such_array); $i++){
$selectlinks="SELECT * from firma where beschreib like '%$such_array[$i]%' order by firma DESC limit $start,$numentries";
Nun ist aber das Problem bei mir, dass wenn zwei oder mehrere Firmen den gleichen Inhalt in Ihrem Namen haben, dass diese dann ausgegeben werden.
Beispiel:
Firmen in Datenbank
Seniorenservice Max Mustermann
Gartenpflegegestaltung Hans Mustermann
Firma Heinz Mustermann
existieren. gesucht wird mit den Worten: garten mustermann
Dann würden bei meinem Code alle Firmen auftauchen.
gebe ich als suchworte mustermann garten
gibt er nur
Gartenpflegegestaltung Hans Mustermann
aus, da garten der zuletzt abgefragte Begriff in dem Array ist und somit wohl als letztes zählt, Denke ich mal ?

aber so soll es ja nicht sein, der user soll ja jede beliebige reihenfolge der stichworte eingeben können.
Es muss also noch eine andere Lösung geben um die suchbegriffe anders sla suchstring aufzuschlüsseln als in einem array? Oder vielleicht war mein Ansatz schon richtig und es fehlt nur noch eine Kleinigkeit?
Ich freue mich über jede Antwort!
Beste Grüße