Seite 1 von 1
memberlist_search.html
Verfasst: 20.03.2014 12:02
von cpg
Moin,
ich möchte gern ein Label für "location" hinzufügen, in der Art
Code: Alles auswählen
<dl>
<dt><label for="location">{L_LOCATION}:</label></dt>
<dd><input type="text" name="location" id="location" value="{LOCATION}" class="inputbox" /></dd>
</dl>
Wenn ich "nach einem Mitglied suchen" anklicke, kann ich bisher z.B. einen Usernamen suchen, Email...
Das Label selbst zu erstellen ist kein großes Problem, aber wie komme ich auf die Übergabe,wie wird die Eingabe dort berücksichtigt, sodass ich z.B. "Berlin" eingebe und alle User aus Berlin werden ausgegeben?
Kann mir jemand auf die Sprünge helfen? ... wo ich ungefähr suchen muss?
Gruß
CPG
Re: memberlist_search.html
Verfasst: 22.03.2014 13:40
von Miriam
Finde in der memberlist.php
Code: Alles auswählen
// Search URL parameters, if any of these are in the URL we do a search
$search_params = array('username', 'email', 'icq', 'aim', 'yahoo', 'msn', 'jabber', 'search_group_id', 'joined_select', 'active_select', 'count_select', 'joined', 'active', 'count', 'ip');
Ab da solltest Du imho am Code "entlang hangeln".
Re: memberlist_search.html
Verfasst: 22.03.2014 14:58
von cpg
Moin,
herzlichen Dank für den Hinweis!
Ich habe es inzwischen hinbekommen. Ja, die Zeile ist ein Schlüssel dazu.
Mehr dazu fand ich bei manic2; darauf hat mich eine freundliche Userin bei phpbb.com (über einen Umweg) hingewiesen
Nun geht es an die Praxis-Erprobung. Ich denke aber, dass es für mein Board Sinn macht, schließlich haben die UserInnen schon öfter nach einer "wer wohnt wo?" - Liste gefragt
... und nun haben wir eine
Sogar sortierbar sind die Adressen - aber über ein extra - "benutzerdefiniertes Feld". Es brauchen sich dort bei "Wohnort für Suche" nur die UserInnen einzutragen, die mitmachen wollen.
Gruß und schönes Wochenende
cpg
Re: memberlist_search.html
Verfasst: 24.03.2014 13:52
von cpg
Moin,
ich habe doch mal noch eine Frage.
in der memberlist.php heißt
es:
Code: Alles auswählen
$sql_where .= ($username) ? ' AND u.username_clean ' . $db->sql_like_expression(str_replace('*', $db->any_char, utf8_clean_string($username))) : '';
//$sql_where .= strtolower($location) ? ' AND LOWER(fd.pf_location) ' . $db->sql_like_expression(str_replace('*', $db->any_char, strtolower($location))) . ' ' : '';
$sql_where .= mb_strtolower($location,'utf8') ? ' AND LOWER(fd.pf_location) ' . $db->sql_like_expression(str_replace('*', $db->any_char, mb_strtolower($location,'utf8'))) . ' ' : '';
Die erste Zeile dient der Nachfrage nach dem Usernamen
Die zweite Zeile (ausgeklammert) sollte ich einfügen lt. Hinweis (in den Vorpostings)
ABER Umlaute im Feld "location" werden als ?? interpretiert, während Umlaute in der username-Abfrage richtig interpretiert werden.
Deshalb hatte ich es mit der 3. Zeile probiert; aber es bleibt bei den beiden Fragezeichen, also M??nchengladbach statt Mönchengladbach.
Die "mb_strtolower" - Funktion ist auf dem Server verfügbar; das habe ich getestet.
Darf ich noch einmal um einen Hinweis bitten?
Gruß
cpg
Re: memberlist_search.html
Verfasst: 24.03.2014 20:38
von Miriam
Aber der Ortsname wird richtig übergeben nur in der Query mit falschen Umlauten interpretiert?
Re: memberlist_search.html
Verfasst: 24.03.2014 20:46
von cpg
Guten Abend,
es wird wohl schon von dem Formular falsch übermittelt (?)
In der Browserzeile steht dann (wenn ich nach München suche)
&location=M%3F%3Fnchen&em,
während, wenn ich nach einem Usernamen mit "Ä*" suche, folgendes in der Bowserzeile steht:
a&username=Ä*
... und ich auch den User mit dem Namen "Ähnlich" finde.
Aber die beiden Label sind (bis auf die Namen) identisch in der search.html...
Nachtrag:
wenn ich nach M*nchen suche, dann ist alles ok.
Das ist auch kein sooo großes Problem - und eilig ist es auch nicht,
Trotzdem habe ich auch heute immer mal wieder daran rumgetüftelt
Irgenwie kann ich es dann doch nicht sein lassen...
Gruß
cpg
Re: memberlist_search.html
Verfasst: 30.03.2014 14:52
von cpg
Moin,
ich antworte ungern auf eigene Beiträge - aber zum Abschluss: ich habe es hinbekommen; vielen Dank nochmals für die Tipps, die ich erhalten habe.
Die Tabelle in der Memberliste sieht nun so aus:
[ externes Bild ]
Das bedeutet, dass die Member, die über einen (Wohn)Ort gefunden werden
wollen, sich in diesem "benutzerdefinierten Feld" eintragen.
Das erleichtert z.B. persönliche Treffen, Hilfestellungen usw.
Warum so umständlich? Einige haben Vorbehalte und wollen nicht gesucht und gefunden werden. Die tragen in das reguläre Feld für Wohnort nichts ein oder verwenden einen sehr allgemeinen Begriff wie "irgendwo in Deutschland".
Gruß und schönen Sonntag
CPG