---
title: "visa textstycke i sökresultat"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/121375-visa-textstycke-i-sökresultat"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "kittlos"
published: "2005-01-30T21:21:31.000Z"
updated: "2005-01-30T23:51:57.000Z"
replies: 5
views: 400
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/121375-visa-textstycke-i-sökresultat"
---

# visa textstycke i sökresultat

## #1 — kittlos, 2005-01-30T21:21Z

Jag har en sökfunktion som jag vill ska presentera resultaten ungefär som google, dvs om jag sökt ordet **Coca Cola**  så ska resultatet se ut ungefär så här:

**Titeln på artikeln**
"Han var en av de första som provade **Coca Cola**  i deras gäng. Redan som tonåring ville han...

Så jag vill att texten under titeln ska bestå av allt som kommer innan det sökta ordet och närmaste punkt (.) och sen ett bestämt antal tecken efter sökordet.

Går det att få till det på något sätt?

Jag hittar sökresultatet med sql frågan (WHERE text LIKE '%sokord%')

Permalänk: https://www.webforum.nu/p/121375

## #2 — kittlos, 2005-01-30T21:23Z

Det måste förresten inte börja efter närmaste punkt. Det kan lika bra vara ett fast antal tecken för OCh efter sökordet, så att det blir samma för alla resultat.

Permalänk: https://www.webforum.nu/p/1541907

## #3 — Agaith, 2005-01-30T21:34Z

kolla upp funktionerna [substr](http://se.php.net/manual/en/function.substr.php)  och [strpos](http://se.php.net/manual/en/function.strpos.php)  för att ta reda på var i  innehållet ditt sökord är samt för att välja hur mycket innan och efter som skall användas.

Permalänk: https://www.webforum.nu/p/1541911

## #4 — kittlos, 2005-01-30T22:11Z

toppen. Hur räknar jag antalet bokstäver i sökordet (i variabeln $search) ?

Edit: Jag hittade det. Strlen.

(Hur får man det så fint länkat till php.net?)

Permalänk: https://www.webforum.nu/p/1541936

## #5 — kittlos, 2005-01-30T22:43Z

Okej nu gjorde jag så att den visar ett visst antal tecken före, och efter.  Koden:

```php
//----plocka ut texten kring sökresultatet, om sökresultatet finns i "text".
$text_pos = strpos($text,$search);
if($text_pos===FALSE)$show_text="";
else{
	$search_length=strlen($search);
	$add_value = $search_length+100;
	$start_pos = ($text_pos - 50);
	$show_text = substr($text,$start_pos,$add_value);
	$show_text = str_replace($search,'<font color=\"#CC0000\"><b>'.$search.'</b></font>',$show_text);
	}
//-------------------
```

 

Det blir dock ganska fult när den kapar mitt i ord. Finns det något bra sätt att känna av efter mellanslag, både i början och i slutet?

Permalänk: https://www.webforum.nu/p/1541953

## #6 — Agaith, 2005-01-30T23:51Z

[strstr](http://se2.php.net/manual/en/function.strstr.php)  söker efter första förekomsten av en \_nål\_ i en höstack (t.ex. ett mellanslag).

Med hjälp av  [strrev](http://se2.php.net/manual/en/function.strrev.php)  som vänder på strängen borde du nog kunna lösa det lätt.

Kanske inte den snyggaste (bästa) lösningen men det borde nog gå :)

Permalänk: https://www.webforum.nu/p/1542010

---

Tråden på webben: https://www.webforum.nu/amne/php/121375-visa-textstycke-i-sökresultat
