Hallo Micha,
Geht das nur in php oder kann ich das auch in html? Meine Php kentnisse sind leider bescheiden =(
Lg, Armin
HTML ist keine Programmiersprache, damit geht das leider nicht. Du kannst aber Javascript benutzen, um die Suche komplett auf dem Client auszuführen.
Einschränkungen: Der Browser muß Javascript können, Javascript muß eingeschaltet sein, und der Browser muß mit den benutzten Features umgehen können.
Ich würde es so angehen:
Per Javascript ein kleines Formular mit einem Eingabefeld in den DOM-Baum einbauen, so ist die Suche ohne ausreichend funktionsfähiges Javascript gar nicht zu sehen. Ein onclick-Handler für den Submit-Button ruft eine Javascript-Funktion auf, die die Liste durchsucht und für passende Listenelemente die className-Eigenschaft auf eine CSS-Klasse mit rotem Hintergrund ändert.
Grober Ansatz:
CSS: li.found { background:red; } li.notfound { /* nix */ }
HTML: <ul id="people"><li>Paulchen Panter</li><li>Bugs Bunny</li><li>Elmar Fudd</li></ul>
Den DOM-Node der Liste bekommst Du über document.getElementById("people"). Über dessen Kinder iterierst Du, wenn der Text des jeweiligen Kindes zum Suchstring paßt, setzt Du child[i].className="found", ansonsten child[i].className="notfound";
Ob der Text paßt, kannst Du mit einer RegExp testen, was aber vermutlich für Deinen Fall Overkill ist. Ein child[i].firstChild.nodeValue.toLowerCase().indexOf(suchstring.toLowerCase())>=0 sollte vollkommen ausreichend sein, wobei Du den Suchstring besser einmal außerhalb der Schleife "verkleinerst".
Siehe auch: SelfHTML -> Javascript -> Objekt-Referenz -> node.
Alexander