Beiträge: 127
Themen: 34
Registriert seit: 27.12.2007
20.02.2011, 15:01
(Dieser Beitrag wurde zuletzt bearbeitet: 20.02.2011, 15:02 von alexking.)
Wenn man im Mybb eine Suche startet, wird ja ein Suchlink generiert, der eine SID enthält. Dies hat den Nachteil, dass man den Link nicht gut weitergeben kann, weil neue Themen, die nach dem Start der Suche hinzugekommen sind, nicht erfasst werden.
Ich würde also gerne einen Suchlink generieren, der in bestimmten Foren nach einem festen Begriff sucht, sprich alle Such-Parameter direkt in der URL enthält und somit immer aktuell ist:
Beispiel (funktioniert natürlich nicht):
PHP-Code:
www.domain.de/search.php?action=results&fid=24,48&keyword=Suchbegriff&sortby=lastpost&order=desc
Ist das irgendwie möglich ?
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Aufgrund der Komplexität wird nicht live gesucht, sondern auf die Daten zurück gegriffen, die der sid zugeordnet sind. Das kannst du nicht so leicht verändern.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
Ein Kompromiss wäre evtl. den Link so zu gestalten, daß er die Werte nur ins Formular einträgt, der User dann aber selber noch abschicken muss. Das würde unnötige Suchlast durch Zufallsklicks / Spambots / Suchmaschinen verhindern (letztere wird man aber auch mit robots.txt los)
Mit Codeänderung oder Plugin sicher nicht unmöglich...
Wenn du die Problematik ignorieren willst bzw. dir etwaige Probleme egal sind, in search.php einfach die Bedingung $mybb->request_method == "post" entfernen, dann klappt automatisch der Get-Request mit search.php?action=do_search&keywords=abc
Beiträge: 127
Themen: 34
Registriert seit: 27.12.2007
Aber für den Moment ist die Suche ja aktuell, der sucht ja nichts aus einem Archiv und neue Beiträge werden auch berücksichtigt in einem schon bestehenden Thread (wenn man den Link später wieder anklickt). Nur halt neue Threads nicht.
Zudem bieten die meisten anderen Forensoftwares solch ein Such-System. Die Suche soll ja nicht in Echtzeit aktualisiert werden. Ist doch nur ein einfacher Link, der Parameter an die Suche übergibt. Also praktisch ein Link, der die Arbeit der manuellen Sucheinstellungen abnimmt.
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 1.443
Themen: 95
Registriert seit: 15.12.2005
MyBB-Version: 1.6.x
Wenn du das von Stefan verlinkte OpenSearch-Plugin einbaust, kannst du auch solche Links setzen:
search.php?action=search&keywords=SUCHBEGRIFF
Beiträge: 127
Themen: 34
Registriert seit: 27.12.2007
Es würde dann noch ein Parameter fehlen, mit dem man nur in bestimmten Foren sucht und nicht global in allen.
Beiträge: 1.443
Themen: 95
Registriert seit: 15.12.2005
MyBB-Version: 1.6.x
Wenn du in dem Plugin das Array $search_data um folgendes ergänzt, kannst du die Foren-ID so hinzufügen:
search.php?action=search&keywords=SUCHBEGRIFF&forums[]=24&forums[]=48
Code:
'forums' => $mybb->input['forums']
P.S.: Der Paramter fid wird niemals etwas dieser Art enthalten können (aus deinem Beispiel oben):
24,48
MyBB säubert fid und macht daraus immer ein Integer.
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
(20.02.2011, 22:06)querschlaeger schrieb: MyBB säubert fid und macht daraus immer ein Integer.
Leider nicht immer...
PHP-Code:
if($type == "int" && $this->input[$var] != "lastposter")
Ist ein Grund warum man trotzdem überall selber intval() drumrumkleistern darf...