Hat jmd von euch eine Echtzeitsuche realisiert ?
Oder einen Ansatz, wie ihr das realisieren würdet ?
Ich finde die Suche unter https://rocksolidthemes.com/de/contao-themes ziemlich gelungen!
Hat jmd von euch eine Echtzeitsuche realisiert ?
Oder einen Ansatz, wie ihr das realisieren würdet ?
Ich finde die Suche unter https://rocksolidthemes.com/de/contao-themes ziemlich gelungen!
Ich kenne ja jetzt deinen Wissensstand nicht, aber du kannst mal nach "autocomplete" suchen.
Ansonsten ist das meistens ne Serveranfrage per Javascript. Ein sogenannter XMLHttpRequest. Der wird bei jedem Tastenanschlag ausgeführt und ruft dabei auf dem Server ne PHP-Datei auf, welche die DB nach Übereinstimmungen durchsucht und Ergebnisse zurückliefert. (Unglaublich, wie schnell sowas geht, wenn man bedenkt, was da alles bei jedem Anschlag abläuft). Umgangssprachlich wird das auch Ajax genannt.
Wenn man bei Contao mit Ajax arbeitet ist das nicht ganz so einfach, wie es normalerweise sein könnte. Als performante Alternative, wenn da nicht zu viele Werte sind, kann man auch z.B. ein JS-Array in das HTML-Markup bringen.
Das kann man ja einfach in z.B. einem j_template erledigen. Und dann überwacht man mit JS die Tastenanschläge und reagiert darauf. Also ein Script dazu programmieren, was dann bei "keyup" gemacht werden soll.HTML-Code:<script> var myValues = [ 'foo', 'bar', 'doodle', 'poodle' ]; </script>
Bitte!
Vor Anfragen im Forum HTML validieren.
Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.
Vielen Dank an alle Wunschlistenerfüller
Andreas Burg, Web Solutions
Find ich auch gut bei Rocksolid. Die Seite ist aber anscheinend nicht mit Contao gemacht (?!).
Ich muss genau sowas auch lösen und für ein JS-Array werden es zu viele Werte sein.
Ein "schmutziger Trick" für Leute, die keine Symfony cracks sind wäre, eine eigene PHP-Datei anlegen, die selbst eine Datenbankverbindung abseits des Contao Frameworks aufbaut und als Ziel für Ajax-Requests dient. Schwierig wirds halt, wenn Templates gerendert werden müssten, aber bei Sucheinträgen braucht man das ja nicht - da gehts ja nur um reinen Text.
Vorteil wäre, dass gerade bei so vielen, schnell aufeinander folgenden Requests und DB-Abfragen nicht jedesmal das ganze Framework geladen werden muss. Da würde dann wirklich nur das auf dem Server ablaufen, das notwendig ist (ziemlich selten heutzutage).
So werd ichs wahrscheinlich auch machen.
Hallo,
hast du vielleicht eine Lösung, die du uns hier empfehlen kannst?
Ich hab mir unter /web/ajax ein php-script angelegt, das Vorschläge auf Basis der Eingabe ermittelt und die werden mit JQueryUi autocomplete eingeblendet.
Also die schmutzige Lösung aber es funktioniert und ist schnell.
hab sowas hier: forum-a.ch umgesetzt, damals als hack, aber bin grad dran das auf einen AJAX-Call unter Contao 4.9 umzuschrieben mit dem CustomizeSearchListener Hook.
Findet sogar Bilder wenn man z.B. nach 'Küche' sucht, ist jetzt auch noch schneller weil's so auch auf gecachte Suchergebnisse zurückgreifen kann; bei Interesse...
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)