---
title: "dela text i gästbok"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/77604-dela-text-i-gästbok"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "eriks"
published: "2003-05-20T22:32:48.000Z"
updated: "2003-05-21T15:52:57.000Z"
replies: 6
views: 375
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/asp/77604-dela-text-i-gästbok"
---

# dela text i gästbok

## #1 — eriks, 2003-05-20T22:32Z

Hej! När folk skriver för långa ord i gästboken så blir det inte bra, och jag tänkte lösa detta... Frågan är om man ska splitta texten när man lägger in den i databasen eller när man plockar ut den. Vilket är bäst? Jag antar att det finns en funktion för att göra detta.

Tack! /Erik

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

## #2 — crisse6, 2003-05-20T22:36Z

skulle saga splitta efter!

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

## #3 — m_soderlund, 2003-05-20T22:44Z

Eeeeller lös det med Javascript:

I head:

```
<script language="javascript" type="text/javascript">
<!--
function kollagb(){
	if (document.gbook.namn.value==""){
		alert("Du måste ange ditt namn.");
		return false;
 		} else if (document.gbook.medd.value==""){
		alert("Du måste skriva ett meddelande.");
		return false;
		} else if (document.gbook.medd.value.length > 300){
		alert("Ditt meddelande är större än 300 tecken. Var vänlig reducera meddelandet.");
		return false;
}
}
//-->
</script>
```

I body:

```
<form onsubmit="return kollagb();">
</form>
```

Ändra 300 mot passande siffra. :)

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

## #4 — eriks, 2003-05-21T13:32Z

Hur skriver man en sådan split? man måste använda en if-sats eller?

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

## #5 — Engine^, 2003-05-21T15:06Z

```
intIndex = 0
intCursor = 0
intRowLength = 60 [blue]'antal tecken per rad[/blue]
strText = Request.Form("txtMeddelandet") [blue]'eller hur du nu hämtar texten...[/blue]
strText = Replace(strText, vbCrLf, " ")
strText = Replace(strText, "<br>", " ")

While intIndex < Len(strText)
  If intCursor Mod intRowLength = 0 Then
    If Mid(strText, intCursor, 1) = " " Then
      strOutput = strOutput & Mid(strText, intIndex, intRowLength) & "<br>"
      intIndex = intIndex + intRowLength
    Else
      strOutput = strOutput & Mid(strText, intIndex, InStrRev(strText, " ", intIndex + intRowLength)) & "<br>"
      intIndex = intIndex + intRowLength - InStrRev(strText, " ", intIndex + intRowLength)
    End If
  End If

  intCursor = intCursor + 1
Wend

If intIndex > Len(strText) And intCursor < Len(strText) Then
  strOutput = strOutput & Mid(strText, intCursor)
End If

If strOutput = "" Then strOutput = strText
```

Skrivet ur huvudet, så jag lovar inget :) Fungerar det som jag tänkt så kommer *strOutput* att innehålla meddelandet med radbrytningar där det är angett.

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

## #6 — Peeer, 2003-05-21T15:20Z

m_soderlund: Den koden kontrollerar ju bara så att hela inlägget är mindre än 300 tecken. Den bryter ju inte ord som är för långa (vilket var trådskaparens fråga.).

Engine^: Har tyvärr ingen möjlighet att pröva din kod, så jag frågar dig istället :) 
Har den koden samma problem som koden jag använde i den [här](http://www.webforum.nu/showthread.php?s=&threadid=75393) tråden? Dvs. Även om en textsträng skulle behöva brytas 2 gånger, så bryts den bara en gång?

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

## #7 — Engine^, 2003-05-21T15:52Z

Vet ej, eftersom jag inte heller har någon möjlighet att testa koden just nu, men jag tror inte att den ska stjälpas av den tuvan.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/77604-dela-text-i-gästbok
