Ich bin dabei, die Inhalte einer MySQL-Datenbank durchsuchbar zu gestalten und zerbreche mir den Kopf, wie man die Suchfunktion in Zukunft besser nutzen kann.
Zur Veranschaulichung:
http://kingssingers.rockmusic-web.de/search.php
Die Variablen werden mit POST an result.php übergeben, und zur Zeit werden nur bestimmte Zeichen überhaupt akzeptiert:
Die durchsuchbaren Begriffe sind auch in anderen Sprachen geschrieben, die Akzente enthalten. Daher gibt es z.B. bei einer Suche nach "congié" eine Fehlermeldung, da das "é" nicht erlaubt ist.
Technische Daten:
- zu Hause MySQL 3.23.51-nt und PHP 4.2.1
- online MySQL 3.23.55-Max-log und PHP4.x (Genaueres nicht bekannt)
Zur Veranschaulichung:
http://kingssingers.rockmusic-web.de/search.php
Die Variablen werden mit POST an result.php übergeben, und zur Zeit werden nur bestimmte Zeichen überhaupt akzeptiert:
PHP-Code:
if (!(eregi("^[a-z0-9äöüß '-]{2,100}$", $suchtext))) {
echo "<h3>Bitte geben Sie einen Suchbegriff mit mehr als zwei
Buchstaben und ohne Sonderzeichen ein.</h3><br><br>";
echo "<input type=\"button\" value=\"Zurück\" onClick=history.back()>";
include("template/footer.php");
exit;
}
- Gibt es eine Möglichkeit, nicht bestimmte Zeichen explizit zu erlauben, sondern die gängigen Buchstaben von bestimmten Sprachen oder Zeichensätzen?
- Gibt es eine Möglichkeit, auch eine Suche zum Erfolg führen zu lassen, die ohne Umlaute oder Buchstaben nicht-deutscher Zeichensätze ausgeführt wird? Ich denke da an Leute mit einer englischen Tastatur, die gar keine Umlaute auf einfachen Knopfdruck produzieren können, sondern erst den Umweg über die Zeichentabelle, Alt+xxxx oder die Installation eines deutschen Tastatur-Layouts gehen müßten.
Technische Daten:
- zu Hause MySQL 3.23.51-nt und PHP 4.2.1
- online MySQL 3.23.55-Max-log und PHP4.x (Genaueres nicht bekannt)
Kommentar