Auswahl-Anzeige während des Tippens
Linuxbär
- programmiertechnik
Hallo,
wie heißt der Fachbegriff für diese Kästchen, die an einem Eingabefeld kleben und Vorschläge zeigen, bei jedem Tastendruck neu?
Möchte bei der Eingabe von Städtenamen so etwas anwenden. Vermutlich geht das über Ajax, aber wie ist die Serverbelastung? Wenn ich mir vorstelle, dass bei jedem Tastendruck von n Besuchern jedesmal die Datenbank geöffnet und ein SQL abgesetzt werden muss ...
Oder ist das eine andere Technik? Kann man ein "in Bereitschft" stehendes Programm vom Browser aus ansprechen?
Gibt es einen Leitfaden zum Einlesen? - Ich muss dieses Rad ja nicht neu erfinden.
Gruß,
Linuxbär
Hi,
wie heißt der Fachbegriff für diese Kästchen, die an einem Eingabefeld kleben und Vorschläge zeigen, bei jedem Tastendruck neu?
autosuggest, autocomplete - vielleicht gibt's auch noch andere Bezeichnungen.
Möchte bei der Eingabe von Städtenamen so etwas anwenden.
Bitte nicht! Sowas nervt.
Vermutlich geht das über Ajax, aber wie ist die Serverbelastung? Wenn ich mir vorstelle, dass bei jedem Tastendruck von n Besuchern jedesmal die Datenbank geöffnet und ein SQL abgesetzt werden muss ...
Kommt drauf an, wieviele Besucher/Zugriffe du pro Sekunde erwartest. Wenn es nur eine Handvoll ist, hält sich die Belastung doch sehr in Grenzen.
Ciao,
Martin
[latex]Mae govannen![/latex]
autosuggest, autocomplete - vielleicht gibt's auch noch andere Bezeichnungen.
Möchte bei der Eingabe von Städtenamen so etwas anwenden.
Bitte nicht! Sowas nervt.
Wieso nervt es, wenn ich Asch eingebe und dann mit einer einzigen weiteren Aktion Aschaffenburg auswählen kann, ohne den kompletten Namen tippen zu müssen (insbesondere interessant bei Begriffen, bei deren Schreibweise man nicht sicher ist)
Stur lächeln und winken, Männer!
Kai
Hallo,
autosuggest, autocomplete - vielleicht gibt's auch noch andere Bezeichnungen.
Möchte bei der Eingabe von Städtenamen so etwas anwenden.
Bitte nicht! Sowas nervt.
Wieso nervt es, wenn ich Asch eingebe und dann mit einer einzigen weiteren Aktion Aschaffenburg auswählen kann, ohne den kompletten Namen tippen zu müssen
weil es genausogut Ascheberg, Aschersleben oder Aschheim sein könnte, was ich eigentlich eigeben möchte. Und da irritiert es mich sehr, wenn bei jedem Tastendruck der Inhalt des Eingabefelds auf magische Weise rumflackert. Auch wenn ich beim Tippen den Blick mehr auf der Tastatur als auf dem Bildschirm habe, nehme ich das Gezappel doch aus dem Augenwinkel wahr.
(insbesondere interessant bei Begriffen, bei deren Schreibweise man nicht sicher ist)
Dann probiert man die Schreibweise, von der man *glaubt*, sie sei richtig, und bekommt *dann* eine Liste der möglichen Treffer. Aber bitte nicht schon während der Eingabe, sondern erst beim Absenden der Anfrage.
Normalerweise kann man solchen Nervensägen ja entgehen, indem man einfach Javascript für die entsprechende Site abstellt. Wenn das aber ausgerechnet eine Website ist, die Javascript für andere Dinge unbedingt braucht, ist man gekniffen.
Ciao,
Martin
[latex]Mae govannen![/latex]
Bitte nicht! Sowas nervt.
Wieso nervt es, wenn ich Asch eingebe und dann mit einer einzigen weiteren Aktion Aschaffenburg auswählen kann, ohne den kompletten Namen tippen zu müssenweil es genausogut Ascheberg, Aschersleben oder Aschheim sein könnte, was ich eigentlich eigeben möchte.
Ja, und? Diese Orte würden dann - zusemmen mit Aschaffenburg - in der Auswahlliste angezeigt werden, man kann dann mit einem Klick den gewünschten Eintrag auswählen.
Und da irritiert es mich sehr, wenn bei jedem Tastendruck der Inhalt des Eingabefelds auf magische Weise rumflackert. Auch wenn ich beim Tippen den Blick mehr auf der Tastatur als auf dem Bildschirm habe, nehme ich das Gezappel doch aus dem Augenwinkel wahr.
Ublicherweise schaut man dann auch hin und hört automatisch auf zu tippen, wenn die gewünschte Wahlmöglichkeit erscheint.
(i.nsbesondere interessant bei Begriffen, bei deren Schreibweise man nicht sicher ist)
Dann probiert man die Schreibweise, von der man *glaubt*, sie sei richtig, und bekommt *dann* eine Liste der möglichen Treffer. Aber bitte nicht schon während der Eingabe, sondern erst beim Absenden der Anfrage.
Ja super. Ein zusätzlichr Roundtrip und Gängelung des Nutzers. Nicht, daß das generell falsch wäre, im Gegenteil sähe ich das für Javascript-Blocker als unverzichtbare Fallback-Lösung; aber als primäre Nutzungsmöglichkeit vollkommen unzureichend. Da suche ich mir als Nutzer beim nächsten Mal falls es möglich ist eine Website, die es mir bequemer macht.
Stur lächeln und winken, Männer!
Kai
Hallo,
Und da irritiert es mich sehr, wenn bei jedem Tastendruck der Inhalt des Eingabefelds auf magische Weise rumflackert. Auch wenn ich beim Tippen den Blick mehr auf der Tastatur als auf dem Bildschirm habe, nehme ich das Gezappel doch aus dem Augenwinkel wahr.
Ublicherweise schaut man dann auch hin und hört automatisch auf zu tippen, wenn die gewünschte Wahlmöglichkeit erscheint.
nö, normalerweise weiß ich ja, was ich eingeben möchte - also tippe ich das auch ein. Wenn dann auf halbem Weg andere unerwartete Dinge passieren (z.B. automagische Eintragungen im Eingabefeld), oder ich sogar behindert werde (z.B. weil ein anderes Fenster aufpoppt), dann empfinde ich das als störend und ärgerlich - ebenso wie z.B. ein Treppenhauslicht, das per Bewegungsmelder automatisch angeht, obwohl ich es nicht eingeschaltet habe. Oder Verkäufer im Kaufhaus, die ungefragt auf mich zurennen, obwohl ich noch nichts von ihnen will.
Dann probiert man die Schreibweise, von der man *glaubt*, sie sei richtig, und bekommt *dann* eine Liste der möglichen Treffer. Aber bitte nicht schon während der Eingabe, sondern erst beim Absenden der Anfrage.
Ja super. Ein zusätzlichr Roundtrip und Gängelung des Nutzers. Nicht, daß das generell falsch wäre, im Gegenteil sähe ich das für Javascript-Blocker als unverzichtbare Fallback-Lösung; aber als primäre Nutzungsmöglichkeit vollkommen unzureichend. Da suche ich mir als Nutzer beim nächsten Mal falls es möglich ist eine Website, die es mir bequemer macht.
Tja, da geht es mir exakt umgekehrt. Ich möchte lieber *explizite* Anfragen und Wahlmöglichkeiten als implizite. Die Nervensägen-Lösung meinetwegen, nachdem ich sie durch Setzen eines Häkchens ausdrücklich wünsche.
Ciao,
Martin
Möchte bei der Eingabe von Städtenamen so etwas anwenden.
Bitte nicht! Sowas nervt.
Ja, mich auch bei Google.
Aber Städtenamen sehe ich als Ausnahme. Wer trifft denn schon die richtige Bezeichnung aus der Datenbank? Keiner weiss doch, wie manche Städte wirklich heißen.
Neustadt am Rübenberge oder Neustadt Rbg oder doch Neustadt a.R.? Neustadt/W oder Neustadt (Weinstraße) oder doch Neustadt an der Weinstraße? Groß-Gerau oder Gross-Gerau? Wie könnte ein Leser jemals "München" finden, wenn seine Tastatur kein Ü hat?
Dabei fällt mir ein:
Gibt es für MySQL einen Trick, dass ss=ß ae=ä oe=ö usw. findet? Bei der Sortierfolge geht diese Gleichstellung ja irgendwie. Bei mir fehlt der Kringel auf dem A, wie könnte ich die dänische Stadt Åbenrå jemals finden?
Diese Autosuggestion ist nur ein (wichtiges) Glied in der Kette des Findens und keinesfalls die Lösung. Da muss ich noch Grübeln. Deshalb wollte ich mich nicht in die Autosuggestion reinhängen und neu entwickeln.
Gruß,
Linuxbär
Hi,
Gibt es für MySQL einen Trick, dass ss=ß ae=ä oe=ö usw. findet? Bei der Sortierfolge geht diese Gleichstellung ja irgendwie.
Richtige Collation verwenden - latin1_german2_ci.
http://dev.mysql.com/doc/refman/5.1/en/charset-collation-effect.html
Bei mir fehlt der Kringel auf dem A, wie könnte ich die dänische Stadt Åbenrå jemals finden?
In dem du nur ein A eingibst - wenn der Seitenbetreiber eine Suchstrategie a la Accent Folding implementiert hat.
MfG ChrisB
Gibt es für MySQL einen Trick, dass ss=ß ae=ä oe=ö usw. findet? Bei der Sortierfolge geht diese Gleichstellung ja irgendwie.
Richtige Collation verwenden - latin1_german2_ci.
http://dev.mysql.com/doc/refman/5.1/en/charset-collation-effect.html
Datenbank ist utf8_unicode_ci, also nix german.
Gefunden wird "Bad Dürkheim" bei Eingabe von "Bad Durkheim", aber nicht bei Eingabe von "Bad Duerkheim" - das versteht doch kein Laie. Jeder, der kein Ü hat, schreibt "Mueller" mit ue, wie denn sonst?
"Groß-Gerau" wird weder bei Eingabe von "Gross-Gerau" noch unter "Gros-Gerau" gefunden. Also die (nachvollziehbare) Regel, einen "ähnlichen" Buchstaben einzugeben, gilt nicht.
Und das vorhandene "Fanø" wird über "fano" nicht gefunden. Da muss ich mir das Thema Accent Folding mal durchlesen. Welcher Aufwand wäre da zu treiben?
Gruß,
Linuxbär
Hallo,
Gefunden wird "Bad Dürkheim" bei Eingabe von "Bad Durkheim", aber nicht bei Eingabe von "Bad Duerkheim" - das versteht doch kein Laie. Jeder, der kein Ü hat, schreibt "Mueller" mit ue
wenn derjenige sowas wie Umlaute und deren Transkription speziell im Deutschen kennt, ja. Aber dann ist auch die Wahrscheinlichkeit groß, dass er/sie Umlaute direkt verwenden kann.
wie denn sonst?
Wer Englisch als Muttersprache hat und die deutschen Eigenheiten nicht kennt, der wird anstatt eines "ü" wohl mangels besserem Wissen einfach ein "u" eingeben.
"Groß-Gerau" wird weder bei Eingabe von "Gross-Gerau" noch unter "Gros-Gerau" gefunden. Also die (nachvollziehbare) Regel, einen "ähnlichen" Buchstaben einzugeben, gilt nicht.
Schreibt sich das denn überhaupt mit Bindestrich? Ich dachte, Großgerau schreibe sich zusammen als _ein_ Wort.
So long,
Martin
Hallo,
Schreibt sich das denn überhaupt mit Bindestrich? Ich dachte, Großgerau schreibe sich zusammen als _ein_ Wort.
Wäre ein weiteres Problem, Mehrwortstädte in einem Wort zu schreiben. Aus allen nicht-numerischen und nicht-alfabetischen Zeichen mache ich ein Leerzeichen, mehrere Leerzeichen werden zu einem geschrumpft.
So hoffe ich, Neustadt/Weinstraße, Neustadt (Weinstraße), Neustadt - Weinstraße anschliessend mit derselben Routine zu finden.
Aber neustadtweinstraße fällt durchs Raster bis zum Finden eines Auswegs.
Gruß,
Linuxbär
Aber neustadtweinstraße fällt durchs Raster bis zum Finden eines Auswegs.
Wenn Du einen vernünftigen Index hast, der auch Wortteile indiziert, kannst du danach suchen und die Eingabe könnte auch in Teile verhackepetert werden.
Om nah hoo pez nyeetz, Linuxbär!
Schreibt sich das denn überhaupt mit Bindestrich? Ich dachte, Großgerau schreibe sich zusammen als _ein_ Wort.
Matthias
Aber Städtenamen sehe ich als Ausnahme. Wer trifft denn schon die richtige Bezeichnung aus der Datenbank? Keiner weiss doch, wie manche Städte wirklich heißen.
Da könnte man aber viele Ausnahmen definieren: Menschennamen, Hundenamen, Namen von Hauptgerichten oder Nachspeisen, Namen von Weinen.
Vorhalten musst Du die Verknüpfungen zwischen falscher und richtiger Schreibweise sowieso - bzw. einen entsprechend unscharfen Suchalgorithmus. Aber es reicht m.E., wenn man nach der Eingabe eine Neue Seite mit Auswahlmöglichkeiten präsentiert kriegt. Diese flackernden pulldownmenüs sind echt ugly.
مرحبا
Wie könnte ein Leser jemals "München" finden, wenn seine Tastatur kein Ü hat?
Ohne Arme keine Kekse.
mfg
Hey Linuxbär,
warum läßt du den Besucher ein Freitextfeld ausfüllen? Arbeite mit einer klugen Geohierachie via Select-Feldern. Alles andere ist Quatsch. Wir (Touristikunternehmen) haben eine festgelegte, stets wachsende Geostruktur, die manuell gepflegt werden muß.
grüße
creeper
Hallo,
zu diesem multilingualen Städtefinden-Thema gehört auch das Problem, dass eine Stadt zahlreiche Namen hat.
Man nehme nur mal München - Munich - Mnichov usw.
Ein Deutscher würde die französische Stadt Strasbourg vielleicht unter "Straßburg" oder "Strassburg" suchen und die Tchechische Hauptstadt "Praha" unter Prag. Das geht weit hinaus über die Tolerierung von Akzenten oder Umlauten.
Das muss doch schon mal jemand geregelt haben, wie geht das?
Ein zusätzliches Suchfeld im Orts-Stammsatz mit allen möglichen Begriffen? Geht da bei ca. 15000 Datensätzen nicht die DB in die Knie, sämtliche, ebentuell prall gefüllte Suchfelder nach "Prague" (= frz. für Praha) zu durchsuchen?
Oder eine Extra-Übersetzungstabelle nur für Städtenamen?
Zur Erklärung: Meine Besucher sind hauptsächlich Deutsche und Bewohner angrenzender Länder. Aber es gibt erste Informationen auch für weitere Länder, die touristisch interessant sind. Da kommt dann noch griechisch und kyrillisch (bei der Suche) dazu, aber das stelle ich mal hinten an.
Andererseits weiss ich wegen [HTTP_ACCEPT_LANGUAGE|, in welcher Sprache die Auskunft erwünscht ist. Wenn ein Mongole mit einem vietnamesischen PC sucht, hat er halt Pech gehabt *frechgrins*
Gruß,
Linuxbär
Moin!
Genau. Man macht das ueber Aliase. Jeder Ortsname muss entsprechend fuer verscheidene Sprachen vorliegen. Berlin, Berlino, ...
Und gerade hier wuerde ich mich nicht auf irgendwelche Browserangaben verlassen. Ich z.b. bekomme immer englische Seiten vorgesetzt, die ich aber gar nicht will. Genauso gehts dem Touri.
Das sollte also unabhaengig der Browsersprache laufen. Wenn ich "Mun" eingegeben habe sollte Munich, Munchen (mit Umlaut), Munster(mit Umlaut), Munster, ... erscheinen. Ich kann z.B. keine Umlaute eingeben, moechte Muenchen aber trotzdem finden und nicht in Munster landen wenn ich nach Muenster will.
Es ist ein echtes Kreuz mit Staedtenamen. Ich wuerde gar nicht erst versuchen, alle Varianten zu unterstuetzen, ausser es handelt sich um sowas wie die Bahn oder aehnlich wichtige/grosses.