Zoekresultaten met leestekens

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wessel w

wessel w

25/05/2010 21:12:56
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$search
= trim($_GET['search']);
$sql = mysql_query("SELECT * FROM nieuws WHERE titel LIKE '%".mysql_real_escape_string($search) ."%')");
?>


In sommige titels van nieuwsitems zitten aanhalingstekens, maar bij het zoeken laten veel mensen die weg.
Bijvoorbeeld de zoekopdracht: Brooklyns Finest.
De titel staat alleen in de database als: Brooklyn's Finest (met aanhalingsteken).

Als je dus zoekt op: Brooklyns Finest (zonder aanhalingsteken) of Brooklyn s Finest (spatie ipv aanhalingsteken), krijg je geen resultaat.

Hoe zorg ik dat er toch de goede resultaten zijn als je bij een zoekopdracht leestekens weglaat?
 
PHP hulp

PHP hulp

25/04/2024 12:04:46
 
Marcel K

Marcel K

25/05/2010 21:37:28
Quote Anchor link
kan je iets met een andere zoekmethode ?
Kijk bijvoorbeeld eens naar: http://www.phphulp.nl/php/script/snippets/database-zoekfuncite-met-boolean-mode/1531/
 
Wessel w

wessel w

26/05/2010 13:09:57
Quote Anchor link
Is dat ook de methode waarbij zoekopdrachten met minder dan 4 characters niet werken?
Want dat is geen optie, er zitten filmtitels tussen zoals 'yes man' en 'up'...

Is mijn probleem niet op te lossen met de huidige zoekmethode? :)
 
Chris -

Chris -

26/05/2010 14:23:43
Quote Anchor link
Er bestaan inderdaad hele zoek-algoritmen. In jouw geval, zou ik 2 verschillende algoritmen gebruiken. De eerste zoekt zoals je nu doet, de gehele zoekterm in de query.

De andere, zou ik net een tikkeltje anders doen, door per woord te zoeken, en de begin- en eindletters weg te laten. Dus een zoekterm als "Brooklyns Finest" wordt dan %rooklyn% OR titel LIKE %ines%. Uiteindelijk zul je na wat oefenen en spelen een uitstekende algoritme kunnen vinden! (Vergeet overigens niet dat je de zoektermen ook kunt opslaan, hier dagelijks/wekelijks naar kunt kijken en op die manier er dus een "slimme" zoekmachine van te maken)
 
Erik Rijk

Erik Rijk

26/05/2010 15:31:18
Quote Anchor link
CONVERT(expr USING transcoding_name)

Ik was hier zelf een poos geleden mee bezig, ik weet dat het wel zo kan.
Als je zoek op a, zul je ook: ä vinden.
Je moet zelf maar even een beetje knutselen. Kijk eventjes op dev mysql.
 
Wessel w

wessel w

27/05/2010 03:25:34
Quote Anchor link
Erik:
CONVERT(expr USING transcoding_name)

Ik was hier zelf een poos geleden mee bezig, ik weet dat het wel zo kan.
Als je zoek op a, zul je ook: ä vinden.
Je moet zelf maar even een beetje knutselen. Kijk eventjes op dev mysql.


Oke, ga ik mee aan de slag.
Kan het ook werken met aanhalingstekens of alleen met accenten?
Gewijzigd op 27/05/2010 03:25:56 door wessel w
 
Wessel w

wessel w

30/05/2010 04:15:44
Quote Anchor link
Hoe importeer ik CONVERT(expr USING transcoding_name) in deze zoekopdracht?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$search
= trim($_GET['search']);
$sql = mysql_query("SELECT * FROM nieuws WHERE titel LIKE '%".mysql_real_escape_string($search) ."%')");
?>
 
Wessel w

wessel w

30/05/2010 17:29:29
Quote Anchor link
Ik heb nog geen oplossing gevonden voor het probleem uit de openingspost.

Wessel:
Zoekfunctie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$search
= trim($_GET['search']);
$sql = mysql_query("SELECT * FROM nieuws WHERE titel LIKE '%".mysql_real_escape_string($search) ."%')");
?>


In sommige titels van nieuwsitems zitten aanhalingstekens, maar bij het zoeken laten veel mensen die weg.
Bijvoorbeeld de zoekopdracht: Brooklyns Finest.
De titel staat alleen in de database als: Brooklyn's Finest (met aanhalingsteken).

Als je dus zoekt op: Brooklyns Finest (zonder aanhalingsteken), krijg je geen resultaat.

Hoe zorg ik dat er toch de goede resultaten zijn als je bij een zoekopdracht leestekens weglaat?


Zou iemand me kunnen helpen?
Gewijzigd op 30/05/2010 17:29:45 door wessel w
 
Joren de Wit

Joren de Wit

30/05/2010 18:04:03
Quote Anchor link
De oplossing van Chris werkt ook niet? Wat voor algoritme heb je geprobeerd?
 
Wessel w

wessel w

31/05/2010 18:45:06
Quote Anchor link
Blanche PHP op 30/05/2010 18:04:03:
De oplossing van Chris werkt ook niet? Wat voor algoritme heb je geprobeerd?

Die is een beetje omslachtig. Er wordt ook vaak gezocht op titels die aanhalingstekens in het midden van een zoekterm hebben (Qu'un seul tienne, When You're Strange) en dan werkt het niet.

Ik zoek eigenlijk dus echt een manier om de zoekresultaten te laten werken, ook al vergeet je de aanhalingstekens...
 
Wessel w

wessel w

01/06/2010 23:52:41
Quote Anchor link
En dat is blijkbaar niet mogelijk in php. :P
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.