Avatar billede oasen Nybegynder
31. marts 2002 - 06:29 Der er 14 kommentarer og
1 løsning

Opdeling af input fra en formular

Hvordan opdeles en sammenhængende tekst fra en db?

Eks:

Hentes følgende fra db,

"slgwuegfisefjlwifhsiugiulrfiulsuigliewfui"

- skal dette udskrives med bindestreger, så det ikke ødelægger tabelstrukturen. (Altså hvis den sammenhængende tekst er 'længere' end tabelcellen).

Ok?
Avatar billede burningice Nybegynder
31. marts 2002 - 13:34 #1
Brug Mid

F.eks. Response.Write Mid(str,1,10) vil returnere de første 10 bogstaver. Mid(str,11,10) vi så returnere de næste 10 osv
Avatar billede oasen Nybegynder
31. marts 2002 - 16:29 #2
Hmm...ja tak, men hvordan kombinerer jeg det med dette f.eks.?:

Response.Write "<font class='normal'>" & rs("Besked") & "</font>"
Avatar billede oasen Nybegynder
31. marts 2002 - 16:32 #3
Sådan?:

Response.Write Mid(str,1,10) & "<font class='normal'>" & rs("Besked") & "</font>"
Response.Write Mid(str,11,10) & "<font class='normal'>" & rs("Besked") & "</font>"
Avatar billede burningice Nybegynder
31. marts 2002 - 17:52 #4
uhm... i mit tilfælde er str din streng, altså bliver det til noget i den her retning

Response.Write "<font class='normal'>" & Mid(rs("Besked"),1,10) & "</font>"
Response.Write "<font class='normal'>" & Mid(rs("Besked"),11,10) & "</font>"

Eller endnu bedre

Dim strBesked
strBesked = rs("besked")

Response.Write "<font class='normal'>" & Mid(strBesked,1,10) & "</font>"
Response.Write "<font class='normal'>" & Mid(strBesked,11,10) & "</font>"
Avatar billede oasen Nybegynder
31. marts 2002 - 21:46 #5
Ja, det kan jeg godt se. Sådan hentes dele af et tekststykke. Men det er ikke særlig fleksibelt, idet jeg tilsyneladende bliver nødt til at indsætte et tvungent linieskift eller mellemrum i brugerens tekst. F.eks. sådan:

Response.Write "font class='normal'>" & Mid(strBesked,1,20) & Mid(strBesked,31,20) & Mid(strBesked,51,20) & Mid(strBesked,71,20) & Mid(strBesked,91,20) & Mid(strBesked,111,20) & "</font>"

Måske det var smartere med en funktion (evt. i JavaScript), der ikke tillader brugeren at indtaste mere end 30 tegn uden mellemrum. For hvis et ord er mere end 30 tegn kan det umuligt være seriøst. Dermed et uønsket indlæg.

Sig lige til hvis jeg har misforstået dig totalt :)
Avatar billede oasen Nybegynder
31. marts 2002 - 21:49 #6
Ups - det var sådan jeg mente:

Response.Write "font class='normal'>" & Mid(strBesked,1,20) & Mid(strBesked,31,20) & "<br>" & Mid(strBesked,51,20) & Mid(strBesked,71,20) & "<br>" & Mid(strBesked,91,20) & Mid(strBesked,111,20) & "</font>"
Avatar billede oasen Nybegynder
31. marts 2002 - 21:57 #7
Man kan også ødelægge Ekspertens tabel, hvis man vil, og det synes jeg er dumt.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Avatar billede oasen Nybegynder
31. marts 2002 - 21:57 #8
Hmm... det kunne man da på et tidspunkt.

ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
Avatar billede oasen Nybegynder
31. marts 2002 - 21:58 #9
Der var den...
Avatar billede burningice Nybegynder
31. marts 2002 - 22:21 #10
oasen>> du har ret at det ikke er så fleksibelt, og det andet med at tjekke om et ord er længere end 30 tegn er nok bedst. Du kan gøre det både clientside (Javascript) eller serverside (asp). Jeg er ikke nogen haj til javascript men det skulle ikke være noget problem i asp

bolStatus = True
arrTekst = split(str," ")

For i = 0 til UBound(arrTekst)
    If len(i) > 30 Then
        bolStatus = False
    End If
Next

If bolStatus = False Then
    'Et af ordene var mere end 30 tegn
Else
    'Yes yes, den er god nok
End If
Avatar billede oasen Nybegynder
01. april 2002 - 01:35 #11
JavaScript var kun et alternativ. Jeg vil langt hellere bruge serverside.

Tak - jeg kigger lige på det :)
Avatar billede oasen Nybegynder
01. april 2002 - 01:47 #12
Hmm... skulle vist have ventet lidt med at ødelægge Ekspertens tabel. Lidt irriterende med den vandrette scrollbar :o)
Avatar billede oasen Nybegynder
01. april 2002 - 02:57 #13
Hej igen..

Med en lille modificering virker det præcis, som det skal. Mange tak :)

************************************

' TJEK OM ET ORD ER LÆNGERE END 30 TEGN
strBesked = Trim(Request.Form("besked"))   
Dim indhold, arrWord
indhold = strBesked
bolStatus = True
arrWord = split(indhold," ")

For i = LBound(arrWord) To UBound(arrWord)
If len(arrWord(i)) > 30 Then
  bolStatus = False
End If
Next

If bolStatus = False Then
  Response.Write "Kan du se den aflange tast for neden?"
Else (...)
Avatar billede burningice Nybegynder
01. april 2002 - 11:57 #14
Dt var dejligt at du fik det til at virke som du vil have det :) takker for point, og fortsat god påske :)
Avatar billede oasen Nybegynder
01. april 2002 - 20:56 #15
ILM :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester