SQL Suche nach Relevanz sortieren
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
alter hase
benutzer
buchen
buchstabe
code
eintrag
eintragung
evangelist
gemacht url
http
ordern
papier
parameter
relevanz
sortieren
suche
tag
trefferquote
url
weiteren buchstaben
-
Hallo.
Meine Webseite hat jetzt eine (find ich) zufriedenstellende tag/suche">Suche bekommen. Über JQuery wird ein Script ausgelesen. Damit sich Lima-City aber nicht zu viel Traffic erlaubt, verleg ich die Seite (versprochen!) auf meinen Server, sobald ich ihn habe (~3Wochen).
Zum Script:
Es wird ganz einfach über
einträge gesucht und ausgegeben. Alles OK. Nun, jetzt würde ich gerne die ganze Suche nach Relevanz sortieren. Da ja schon ein Buchstabe genügt, um einen Eintrag zu finden würde ich das gerne sortiert haben. Ist ja auch für die Benutzer komfortabler.SELECT * FROM `suche` WHERE `tag` LIKE "%'.$_GET['query'].'%"
Nun eigentlich bin ich ein alter Hase was MySQL angeht, aber hier steh ich an. Gibt es da eine option, mit der man das Sortiren kann? (zB: ORDER BY relativity DESC)?? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hi,
zuerst einmal solltest in deiner Query auf keinen Fall ungeprüft Parameter übernehmen lassen (SQL Injection)
Siehe auch: http://www.tech-evangelist.com/2007/11/05/preventing-sql-injection-attack/
Zweitens: Was ist denn für dich "relevant". Ich denke, dass müsstest du dir zuerst einmal überlegen, was du da überhaupt willst. Was ist denn "relevant"? -
Also mit Relevant meine ich einfach die TrefferQuote.
Nehmen wir an ich habe 4 Eintragungen in "suche" : Buch, Zeitung, Papier und Piercing
Der Benutzer giebt dann "P" ein, weil er nach "Pircing" (!! Nur ein Beispiel! Ist nicht wirklich so!) suchen will. Dann kommt schon ein erstes Ergebniss, welches Papier und Piercing ist. So, jetzt gibt er einen Weiteren Buchstaben ein "I", jetzt bleibt noch immer Papier stehen, obwohl doch ersichtlich ist, dass er "PI"ercing meint, oder? Ich möchte diese Beiden ergebnisse nur sortieren, dass Piercing immer oben steht (weil es relevanter ist)
Verstehst du es jetzt? Wenn nicht, ich hab die vier DInge in meine Suche gemacht. *Klick*
Beitrag zuletzt geändert: 27.8.2010 16:19:08 von limabone -
Aso, ich glaube ich weiß was du meinst:
SELECT * FROM `suche` WHERE `tag` LIKE "%'.$_GET['query'].'%" order by instr(tag, $_GET['query'])
-
Wow diese Funktion ist aber wirklich toll. Die hab ich noch nicht gekannt.
Danke dir hat Super Funktioniert! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage