HTML-Tags bei Suche ignorieren
am 12.04.2006 09:43:07 von Sebastian Gohres
Hi!
Wie kann ich bei einer MySQL Abfrage HTML-Tags aussen vor lassen?
Ich habe eine Tabelle in welcher News mit HTML-Formatierungen
gespeichert werden, z. B.
Dies ist ein zentrierter Text
(Autoren haben mittels eines Richtext-Editors die Möglichkeit, den Text
zu formatieren.)
Nun möchte ich im Administrationsbereich eine Suche nach News
integrieren, welche u. a. den Text durchsucht. Wenn ein Autor nun nach
dem Wort(teil) 'text' sucht, soll aber nicht ein Datensatz gefunden
werden, wo vielleicht nur folgendes steht:
Dies ist eine zentrierter Nes
..............^^^^
HTML-Tags sollen also übersprungen werden, also alles was zwischen < und
> steht. Wie kann ich das bei einer Abfrage erreichen?
MfG
S. Gohres
Re: HTML-Tags bei Suche ignorieren
am 12.04.2006 10:36:50 von Sven Paulus
Sebastian Gohres wrote:
> HTML-Tags sollen also übersprungen werden, also alles was zwischen < u=
nd=20
> > steht. Wie kann ich das bei einer Abfrage erreichen?
Du baust in Deine Tabelle ein TEXT-Feld ein, in Du zusaetzlich noch
den Text ohne Tags einfach von der Applikation her einfuegst. Ueber
dieses suchst Du, das andere Feld (mit HTML-Tags) dagegen gibst Du
aus.
Re: HTML-Tags bei Suche ignorieren
am 12.04.2006 10:39:55 von Thomas Rachel
Sebastian Gohres wrote:
> Hi!
>
> Wie kann ich bei einer MySQL Abfrage HTML-Tags aussen vor lassen?
^ Da fehlt ein '-'.
> Nun möchte ich im Administrationsbereich eine Suche nach News
> integrieren, welche u. a. den Text durchsucht. Wenn ein Autor nun nach
> dem Wort(teil) 'text' sucht, soll aber nicht ein Datensatz gefunden
> werden, wo vielleicht nur folgendes steht:
>
> Dies ist eine zentrierter Nes
>
> .............^^^^
>
> HTML-Tags sollen also übersprungen werden, also alles was zwischen < und
> > steht. Wie kann ich das bei einer Abfrage erreichen?
hm... rein MySQL-mäÃig fiele mir da REGEXP ein. Aber da ich mich mit denen
nicht soo gut auskenne, kann ich Dir bei der konkreten Umsetzung nicht
weiterhelfen...
Eine weitere Möglichkeit wäre, das Ganze per Fulltext-Indices oder per LIKE
'%text%' zu machen und dann in der Applikation weiter auszuwerten, aber das
ist natürlich nicht ganz so schön ;-)
HTH trotzdem,
Thomas