Versio

Zoekopdracht kleuren

Overzicht Reageren

FRizZL isMijnUsername

FRizZL isMijnUsername

11/07/2008 16:03:00
Quote Anchor link
Hallo,

Zou iemand mij kunnen 'uitleggen' hoe ik de zoekresultaten van mijn zoeksysteem dik druk, of een ander kleurtje geef.
Dit moet toch mogelijk zijn dacht ik zo. De gegevens komen uit een database d.m.v LIKE %'"$_GET['q']"'%

Liefst geen code plaatsten, maar uitleggen zodat ik zelf kan proberen. (Hier leer ik weer van)

Met vriendelijke groeten,
Jeffrey
 
PHP hulp

PHP hulp

25/05/2012 20:07:50
Gesponsorde koppelingen:
 
Terence Hersbach

Terence Hersbach

11/07/2008 16:05:00
Quote Anchor link
met str_replace zoek je je zoekopdracht op, en je vervangt je zoekoprdacht door een span (waar je een stijl aan hangt) met daarin je zoekopdracht.

beveilig je input trouwens, anders word hacken erg makkelijk.
 
Jelmer rrrr

Jelmer rrrr

11/07/2008 16:07:00
Quote Anchor link
Allersimpelst: str_replace gebruiken om de zoekterm te vervangen met <strong>zoekterm</strong>. Probleem komt echter wanneer er HTML in je content hebt (waar je je woordjes vet wilt hebben) Dan kan je bijvoorbeeld uitwijken naar preg_replace om zo te voorkomen dat je niets binnen tags matcht. En dan zit je al weer op het domein van de regular expressions (wat zeer vrij vertaald "zwarte magie" betekent)
 
FRizZL isMijnUsername

FRizZL isMijnUsername

11/07/2008 16:07:00
Quote Anchor link
_O_ WOW! Bedankt ;) . Mocht het niet lukken hoor je het!
 
Kvdd

kvdd

11/07/2008 16:08:00
Quote Anchor link
Offtopic: Je avatar :')

Wil je specifieke zoekwoorden dikdrukken of..?

Anders doe je gewoon 'LIKE %'"$_GET['q']"'% AS get_q' en dan krijg je netjes je waarde als get_q terug. Je kunt het via css doen of html, etc.

Eigelijk snap ik je vraag niet goed :)

Edit: te laat, preg_replace is je oplossing denk ik.
Gewijzigd op 01/01/1970 01:00:00 door kvdd
 
ToySoldier ZegIkNiet

ToySoldier ZegIkNiet

11/07/2008 16:12:00
Quote Anchor link
Weer effe alles weggegooid :P

Versie die de woordjes explode en zo zoekt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php

function highlight( $str )
{

     $word = $_GET['q'];
     $ary = explode(' ', $word);
     if ( is_array( $ary ) )
     {

          foreach( $ary as $value )
          {

               if ( !empty( $value ) )
               {

                    $str = str_replace( $value, '<font style="font-weight: bold; color: red;">' . $value . '</font>', $str);
               }
          }
     }

     else
     {
          if ( !empty( $word ) )
          {

                    $str = str_replace( $word, '<font style="font-weight: bold; color: red;">' . $word. '</font>', $str);
          }
     }

     return $str;
}


$text = 'Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. Dit gebruik ik even als de zoekfunctie test text. ';


echo highlight( $text );

?>


Nadeel : Door de explode zoekt hij dingen die misschien niet gezocht zijn maar het is wel nuttig..
Gewijzigd op 01/01/1970 01:00:00 door ToySoldier ZegIkNiet
 
FRizZL isMijnUsername

FRizZL isMijnUsername

11/07/2008 16:29:00
Quote Anchor link
Ik ben der uit ;)

Hartstikke bedankt en weer wat geleerd _O_.

--
Nog 1 vraag, hij werkt nu, maar hij is hoofdletter gevoelig. Hoe pas je dit aan?
Gewijzigd op 01/01/1970 01:00:00 door FRizZL isMijnUsername
 
FRizZL isMijnUsername

FRizZL isMijnUsername

11/07/2008 17:14:00
Quote Anchor link
Mag een bump voor een nieuwe vraag? :$

Anders spijt het mij zeer!
 
Emmanuel Delay

Emmanuel Delay

11/07/2008 17:20:00
Quote Anchor link
Kijk hier eens:

http://be.php.net/manual/en/function.str-ireplace.php

Dit detecteert strings niet-hoofdlettergevoelig, maar om te zorgen dat de case daarna terug staat als tevoren, moet je even nadenken.
 
FRizZL isMijnUsername

FRizZL isMijnUsername

11/07/2008 19:29:00
Quote Anchor link
Nja, ik laat het maar. Ik heb namelijk geen PHP >5

Iig bedankt ;-)
 
Joren de Wit
Beheerder

Joren de Wit

11/07/2008 20:07:00
Quote Anchor link
vdleije schreef op 11.07.2008 19:29:
Nja, ik laat het maar. Ik heb namelijk geen PHP >5
Misschien een idee om aan je host te vragen of ze die ondersteuning kunnen bieden? Of desnoods overstappen naar een andere host die wel PHP5 ondersteund?

Tegenwoordig is PHP5 wel zo'n beetje de standaard. PHP4 was al oud maar die wil je nu eigenlijk echt niet meer gebruiken...
 



Overzicht Reageren

Get Adobe Flash player