Jump to content
php.lv forumi

Recommended Posts

Posted (edited)

Gribu uztaisīt, lai meklējot tekstā, meklējamie vārdi tiek izcelti katrs savā krāsā.

 

Viss it kā strādā, bet ja tiek ievadīti vairāki vārdi, tad dažreiz tiek izcelti vārdi arī html kodā atrastie vārdi un rezultātā viss sabojājas.

Piemēram, ja $meklet='un e' ,bet $text='Ārā līst un snieg.', tad rezultātā teksts būs šāds: Ārā līst e='background-color: #FF0000'>un snieg.

 

Vai var uztaisīt , lai nemeklē iekšhtml tagiem? Ko ieteiksiet?

 

Kods:

 

$meklet=split(" ",$meklet);

$color=array("#FF0000","#FFFF00","#FF6600","#66FFFF","#CCFFFF","#FFFFCC","#66FF66","#FF66CC");

while(list ($key,$val)=each($meklet)):

$text=eregi_replace($val,"<span style='background-color: $color[$key]'>$val</span>",$text);

endwhile;

Edited by freak
Posted (edited)

Tajā hack.lv variantā nestrādā meklēšana , ja izmanto latviešu valodu. PIemēram, ā ē ū ī...

Tādēļ no masīva $patts jāizņem '/&[^;]*;/sU' , bet tad savukārt jāuzmanas no skaitļiem, kas tiek izmantoti LV burtu entītijās un simboliem & ;

Edited by freak
×
×
  • Create New...