Ik heb een zoekfunctie op een website. In de database bevinft zich de complete html code van de pagina. Als er nu gezocht wordt op "strong" wil ik niet dat er iets gevonden wordt (om een voorbeeld te noemen).
Ik wil dus de data filteren op html code, hoe doe ik dat?
De zoekquerie is:
"SELECT * FROM pages
WHERE (MATCH (content_nl) AGAINST ('".$search_input."')
OR content_nl LIKE '%".$search_input."%'
";
<?php
strig_tags(); //?????
?>
Wat ik mij afvraag is waarom je een hele html code in je database hebt staan, over het algemeen is dat niet de meest slimme oplossing.

Meestal is je html gewoon standaard en sla je teksten in je database op waarbij je voor de opmaak eventueel bbcode gebruikt.

Maar goed, om op je vraag terug te komen, dat wordt vrij lastig. Je zult in je query met een regex moeten gaan werken die niet de delen matcht die onderdeel zijn van een html tag.
Blanche,
Ik zet html code in de database omdat ik gebruik maak van een CMS met FCK editor, waarbij de gebruiker stijlen kan aangeven, opmaak, plaatjes invoegen, etc.
Ik berijp dat het vrij lastig wordt, kan je ook aangeven hoe het in zijn werk gaat (evt. link)

Reageren