Hallo Community,
mein Prof. hätte gerne eine Ajax-Livesuche auf seiner Homepage. Da ich mich damit nicht auskenne habe ich den Samstag nachmittag damit verbracht eine Lösung zu suchen, komme aber mittlerweile nicht mehr weiter. Hat jemand hier so eine Suche schon mit Redaxo zusammen verwendet und könnte mir ein wenig helfen bzw. einen Tip geben?
Viele Grüße, Jan
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hi,
schaut euch einfach mal ein paar Tutorials zum Thema AJAX an...
Wenn ihr euch eingelesen habt, sollte das umsetzen kein Problem sein.
Folgende Vorgehensweise:
- Suche absetzen via Javascript
- Ausgabe des Suchergebnisses als XML
- Interpretieren des XML in Javascript
- Anzeige der Interpretierten Inhalte via Javascript
Gruß,
Markus
schaut euch einfach mal ein paar Tutorials zum Thema AJAX an...
Wenn ihr euch eingelesen habt, sollte das umsetzen kein Problem sein.
Folgende Vorgehensweise:
- Suche absetzen via Javascript
- Ausgabe des Suchergebnisses als XML
- Interpretieren des XML in Javascript
- Anzeige der Interpretierten Inhalte via Javascript
Gruß,
Markus
Habe mich ein wenig eingelesen/umgeschaut und ausprobiert. Das Ergebnis (im Bau) sieht noch nicht toll aus, aber es funktioniert halbwegs: http://jantxu.ja.ohost.de
Man benötigt eigentlich 3 Dateien:
1. Die Datei livesearch.js --> http://blog.bitflux.ch/livesearch.js
2. Ein php-Script das die Suche ausführt, die Datei "livesearch.php"
3. Ein Eingabeformular
Bei mir sehen Punkt 2 und 3 wie folgt aus:
PHP-Code der "livesearch.php":
Diese Datei durchsucht eine beliebige Tabelle aus der REX-DB nach $_GET['wuff'], meinem Suchwort. Habe hier zum testen mal die Tabelle "rex_12_search_index" genommen.
Das Suchformular sieht so aus:
Meine Fragen wären nun:
Kann man das irgendwie in das Redaxo-Suchmodul einbauen?
Wäre es vielleicht schlauer, andere Tabellen abzufragen?
Quelle:
http://www.easy-coding.de/livesuche-mit ... -t699.html
Man benötigt eigentlich 3 Dateien:
1. Die Datei livesearch.js --> http://blog.bitflux.ch/livesearch.js
2. Ein php-Script das die Suche ausführt, die Datei "livesearch.php"
3. Ein Eingabeformular
Bei mir sehen Punkt 2 und 3 wie folgt aus:
PHP-Code der "livesearch.php":
Code: Alles auswählen
<?php
require ("connect.inc.php");
$res = mysql_query("SELECT DISTINCT name, content FROM rex_12_search_index WHERE content LIKE '%".$_GET['wuff'] ."%' OR name LIKE '%".$_GET['q'] ."%';");
while($row = mysql_fetch_object($res)) {
echo '<p>';
echo '<a href="'.$row->name.'">'.$row->name.'</a><br />';
echo $row->content;
echo '</p>';
}
?>
Das Suchformular sieht so aus:
Code: Alles auswählen
<html>
<head>
<title>Searchtest</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" src="livesearch.js"></script>
</head>
<body onload="liveSearchInit()">
<form id="searchform" action="livesearch.php" method="get" onsubmit="return liveSearchSubmit()">
<b>Suchbegriff:</b>
<input id="livesearch" name="wuff" type="text" size="30" onkeypress="liveSearchStart()" /><div id="LSResult" style="display: none;"><div id="LSShadow"></div></div>
</form>
</body>
</html>
Kann man das irgendwie in das Redaxo-Suchmodul einbauen?
Wäre es vielleicht schlauer, andere Tabellen abzufragen?
Quelle:
http://www.easy-coding.de/livesuche-mit ... -t699.html
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
So es klappt nun.
Es lag bei mir an der Pfadverweisung im .js
Da mein Inet gerade mega lahm ist, kann ich kaum was testen.
Unter: felixhomann.com/suche probiere ich es gerade aus.
Dann müssten wir das nun noch modular in Redaxo rein bekommen und natürlich noch ein wenig aufpeppen, aber die Grundfunktionen sind ja nun wirklich da.
Es lag bei mir an der Pfadverweisung im .js
Da mein Inet gerade mega lahm ist, kann ich kaum was testen.
Unter: felixhomann.com/suche probiere ich es gerade aus.
Dann müssten wir das nun noch modular in Redaxo rein bekommen und natürlich noch ein wenig aufpeppen, aber die Grundfunktionen sind ja nun wirklich da.
Ich find ein CMS gut.
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Wenn ich die livesuche.php so ins Redaxo includen will
(mein Pfad wäre hier: redaxo/include/livesuche/)
Dann bekomme ich genau 2 Fehler.
- Ich bekomme kein access
- Und keine Verbinung zum Server
Gibt es hier in Redaxo eine allgemeine auth oder config damit ich zum SQL Server komme?
(mein Pfad wäre hier: redaxo/include/livesuche/)
Dann bekomme ich genau 2 Fehler.
- Ich bekomme kein access
- Und keine Verbinung zum Server
Gibt es hier in Redaxo eine allgemeine auth oder config damit ich zum SQL Server komme?
Ich find ein CMS gut.
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Ich muss ja livesuche.php und das zugehörige javascript ja in die Seite bekommen. Derzeit habe ich das in files/ liegen.
Ein andere Problem ist aber folgendes:
Ich kann den Link zum Article nicht raus bekommen. Wenn ich ein Script, welches das übernehmen soll in das Template als solches schreibe und ausgebe, funktioniert es prima. So wie es soll. Packe ich das Script in die livesuche.php dann bekomme ich "undefind funcion ....".
Liegt das an dem Pfad "files/" oder wie kann ich die id aus der Datenbank in einen Link wandeln?
Danke
Ein andere Problem ist aber folgendes:
Ich kann den Link zum Article nicht raus bekommen. Wenn ich ein Script, welches das übernehmen soll in das Template als solches schreibe und ausgebe, funktioniert es prima. So wie es soll. Packe ich das Script in die livesuche.php dann bekomme ich "undefind funcion ....".
Liegt das an dem Pfad "files/" oder wie kann ich die id aus der Datenbank in einen Link wandeln?
Danke
Ich find ein CMS gut.
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Schau mal auf http://redaxo.felixhomann.com
Da ist oben die Suche.
Rechts oben gebe ich folgendes im Template aus
Würde ich das in die livesuche.php eingeben und dann $_GET... mit $row['id'] ersetzten aus der DB spackt der rum.
Kein Plan warum...
Da ist oben die Suche.
Rechts oben gebe ich folgendes im Template aus
Code: Alles auswählen
$catId = OOCategory::getCategoryById($_GET['article_id']);
$catId2 = $catId->getUrl();
Kein Plan warum...
Ich find ein CMS gut.
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Hi,
habe leider keine Zeit mich intensiv damit zu beschäftigen, aber du kannst in der Datei livesearch.js den Pfad zur PHP-Datei ändern.
Suche nach "livesearch.php?q". Das musst Du dann ersetzen.
Vielleicht kannst Du ja mal kurz die Schritte angeben, die Du bis jetzt gemacht hast, ich habe da irgendwie den Überblick verloren...
habe leider keine Zeit mich intensiv damit zu beschäftigen, aber du kannst in der Datei livesearch.js den Pfad zur PHP-Datei ändern.
Suche nach "livesearch.php?q". Das musst Du dann ersetzen.
Vielleicht kannst Du ja mal kurz die Schritte angeben, die Du bis jetzt gemacht hast, ich habe da irgendwie den Überblick verloren...
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Ehm ich habe den java-Pfad angegelichen, aber es kommt ja immer der Fehler "call undefined function"...
Ich befürchte es liegt dran, das die livesuche-Datein in "/files" liegen, würde mich aber freuen eine Antwort von der Admins zu bekommen, um mehr zu wissen. Eventuell auch ne Lösung.
Ich habe bislang das CSS angepasst, Ausgaben formatiert und rumprobiert.
Hast ja denk ich auf der Dummyseite bereits gesehen.
Nur weiß ich nicht mehr weiter.
Ich befürchte es liegt dran, das die livesuche-Datein in "/files" liegen, würde mich aber freuen eine Antwort von der Admins zu bekommen, um mehr zu wissen. Eventuell auch ne Lösung.
Ich habe bislang das CSS angepasst, Ausgaben formatiert und rumprobiert.
Hast ja denk ich auf der Dummyseite bereits gesehen.
Nur weiß ich nicht mehr weiter.
Ich find ein CMS gut.
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Jaaahaaaa
Wenn ich aber das ganz in ein Modul, demnach auch in einer Datei hätte, würde er mir auch den gesamten inhalt von der livesuche.php ausgeben, da er so die GET Funktion fehlinterpretiert. Was ich heute nochmal machen wollte ist, das alles zb in addons zu legen, eventuell kann ich damit schonmal mehr machen, denn so wäre eins Kombinat aus search_index und ajax.
Wenn ich aber das ganz in ein Modul, demnach auch in einer Datei hätte, würde er mir auch den gesamten inhalt von der livesuche.php ausgeben, da er so die GET Funktion fehlinterpretiert. Was ich heute nochmal machen wollte ist, das alles zb in addons zu legen, eventuell kann ich damit schonmal mehr machen, denn so wäre eins Kombinat aus search_index und ajax.
Ich find ein CMS gut.
-
- Beiträge: 520
- Registriert: 21. Sep 2006, 17:39
- Kontaktdaten: ICQ
Sooo
lagere ich das aus in den addons ordner und rufe einfach per URL die Datei auf um den Pfad zu checken bekomme ich folgendes Geschenk.
Was kann das sein? Wie krieg ich es weg?
lagere ich das aus in den addons ordner und rufe einfach per URL die Datei auf um den Pfad zu checken bekomme ich folgendes Geschenk.
Code: Alles auswählen
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@redaxo.felixhomann.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Ich find ein CMS gut.